Outils pour utilisateurs

Outils du site


sysadmin:linux:cli:tar

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
sysadmin:linux:cli:tar [2019/07/31 13:46] – créée yoannsysadmin:linux:cli:tar [2021/02/01 21:51] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
-{{tag>sysadmin linux cli compression archivage todo}}+{{tag>sysadmin linux cli compression archivage syntaxe commande}}
  
 ====== tar ====== ====== tar ======
  
 +===== Lister le contenu de l'archive =====
  
 +L'option **-t** permet de lister le contenu de l'archive:
 +
 +<code bash>
 +tar -tvf archive.tar
 +
 +# Equivalent
 +tar --list --verbose --file=archive.tar
 +</code>
 +
 +===== Changer le répertoire cible =====
 +
 +Par défaut le tar est extrait dans le répertoire courant, l'option **-C** ou **%%--%%directory** permet de définir dans quel répertoire sera extraite l'archive:
 +
 +<code bash>
 +tar -C /path/to/target/directory -xvf archive.tgz
 +</code>
 +
 +===== Décompresser sans les répertoires parents =====
 +
 +Il peut être intéressant de décompresser une archive sans tenir compte de certains répertoires parents.
 +
 +L'archive test.tar.bz2 a le contenu suivant:
 +
 +<code bash>
 +tar -tvf mon_prog.tar.bz2 
 +drwxrwxr-x yoann/yoann       0 2020-04-16 09:43 opt/mon_prog/
 +-rw-rw-r-- yoann/yoann       8 2020-04-16 09:43 opt/mon_prog/README.txt
 +-rwxr-xr-x yoann/yoann      11 2020-04-16 09:43 opt/mon_prog/mon_script.sh
 +</code>
 +
 +Si on décompresse directement cette archive dans le répertoire /usr/local/ par exemple, l'arborescence ./opt/mon_prog/ sera recréée, on obtiendra donc
 +
 +<file>
 +/usr/local/opt/mon_prog/
 +├── mon_script.sh
 +└── README.tx
 +</file>
 +
 +Pour décompresser les fichier dans /usr/local/ sans tenir compte du dossier de plus haut niveau:
 +
 +<code>
 +tar -xjvf test.tar.bz2 --directory=/usr/local/ --strip-components=1
 +</code>
 +
 +L'argument **%%--%%strip-components** permet d'agir sur les noms de fichiers à la décompression et de retirer un ou plusieurs répertoires conteneurs.
 +
 +On obtient dans ce cas:
 +
 +<file>
 +/usr/local/mon_prog/
 +├── mon_script.sh
 +└── README.tx
 +</file>
  
 ===== Références ===== ===== Références =====
  
   * https://www.tecmint.com/18-tar-command-examples-in-linux/   * https://www.tecmint.com/18-tar-command-examples-in-linux/
 +  * https://askubuntu.com/questions/45349/how-to-extract-files-to-another-directory-using-tar-command
 +  * https://unix.stackexchange.com/questions/35311/how-do-you-extract-a-single-folder-from-a-large-tar-gz-archive
sysadmin/linux/cli/tar.1564580788.txt.gz · Dernière modification : 2021/02/01 21:51 (modification externe)