Unix tar: ne conserve pas la structure des répertoires
Quand j'essaie de compresser des fichiers et des répertoires avec tar
à l'aide des chemins absolus, le chemin absolu est conservé dans le fichier compressé. J'ai besoin d'utiliser des chemins absolus pour dire tar
où le dossier que je souhaite compresser est situé, mais je ne le veux compresser ce dossier – pas tout le chemin.
Par exemple, tar -cvzf test.tar.gz /home/path/test
– où je veux compresser le dossier test
. Cependant, ce que j'ai fait en fin de compression est /home/path/test
. Est-il quelque chose qui peut être fait pour l'éviter? J'ai essayé de jouer avec l'option-C opérande en vain.
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
Utilisation
-C
pour spécifier le répertoire de à partir de laquelle les fichiers regarder comme vous voulezpuis spécifier les fichiers comme on le voit à partir de ce répertoire:C'est moche... mais ça marche...
J'ai eu ce même problème, mais avec plusieurs dossiers, je voulais juste à plat de tous les fichiers. Vous pouvez utiliser l'option "transformer" pour passer d'un sed expression et... il fonctionne comme prévu.
c'est l'expression:
's/.*\///g'
(tout supprimer avant '/')C'est la dernière commande:
multi-répertoire exemple
tar cvzf my.tar.gz example.zip -C dir1 files_under_dir1 -C dir2 files_under_dir2
les fichiers sous dir 1/2 ne devrait pas avoir de chemin.