Compression/Décompression sous Linux

 

Fonction TAR:

compresser un fichier tar.gz

tar cfvz fichier.tar.gz /root/projects/fichier

c pour créer une archive
f pour indiquer qu’il s’agit d’un fichier
z pour compresser avec Gzip
v si on désire avoir la liste des fichiers compressés qui défile

décompression d’un fichier tar.gz

tar -xzvf nomfichier.tar.gz

x: extrait
z: type d’archive
v: visu
f: force

Fonction gzip:

compression un fichier en .gz

gzip monfichier

décompression d’un fichier .gz

gzip -d nomfichier.gzip

d: décompresse

Fonction unzip

unzip nomfichier.zip

Fonction zip

exemple de script pour compresser en .zip n fichier dans un répertoire:

#!/bin/bash
liste_fichiers=`ls`
let "i = 0"
for fichier in $liste_fichiers
do
          zip -v $fichier.zip $fichier
done

 

Découper un gros fichier de log:

split -d -b 5m groslog gsys_

 

ici je découpe mon groslog en sys_ de 5Mo chacun
pour plus d’info

man split

 

---------------------------------------/

 

Archive
tar -cvf trading.tar *

or

tar -zcvf trading.tgz *
extract

tar -xvf trading.tar

Découper
tar -cM -L 100000 -f trading.tgz 

zipsplit [-hiLpst] [-n size] [-b path] zipfile
L'outil split s'utilise comme ceci :split -b 1440k mon_gros_fichier

 

split va ainsi créer des fichiers nommées xaa, xab, xac[, etc], de tailles égales ou inférieures (dans le cas du dernier morceau) à 1440 Ko. 
Pour recoller les morceaux, il suffit d'utiliser l'outil "cat" de la manière suivante :

cat xaa xab xac > mon_gros_fichier

Voir aussi la commande join particulièrement adaptée.