2010-04-23 5 views
-1

Je me demande comment lister le contenu d'un fichier d'archive et en supprimer des répertoires? Par exemple, j'ai un fichier archive data.tar.Répertorier et supprimer des répertoires dans une archive

  1. Je voudrais lister son contenu sans l'extraire. Est-il possible de contrôler le niveau du répertoire pour le visionner? Je veux dire pas nécessairement tous les fichiers, mais juste à un certain niveau du chemin. Je voudrais également supprimer certains répertoires correspondants "*/count1000" à partir de celui-ci.

Répondre

3

pour voir le contenu du fichier tar,

tar tvf mytar.tar 

pour extraire un fichier,

tar xvf mytar.tar myfile.txt 

pour supprimer un fichier

tar -f mytar.tar --delete */count1000 
+0

Comment supprimer certains répertoires correspondant de "*/de count1000" de celui-ci. – Tim

+0

Est-il possible de contrôler le niveau du répertoire pour l'affichage? Je veux dire pas nécessairement tous les fichiers, mais juste à un certain niveau du chemin. Thyanks – Tim

1

Vous pouvez dépouiller les Composant du 1er chemin avec:

cat myarchive.tar.gz | tar -tzf - | grep --only-matching -e "/.*" 

Vous pouvez enlever le 2ème composant de chemin avec:

cat myarchive.tar.gz | tar -tzf - | grep --only-matching -e "/.*/.*" 

etc.

Questions connexes