89 votes

Extraire et supprimer tous les .gz d'un répertoire - Linux

J'ai un répertoire. Il contient environ 500K fichiers .gz.

Comment puis-je extraire tous les .gz de ce répertoire et supprimer les fichiers .gz ?

173voto

Adrian Dunn Points 1688

Cela devrait le faire :

gunzip *.gz

24voto

elhaj Points 428

@techedemic est correct mais il manque '.' pour mentionner le répertoire courant, et cette commande passe par tous les sous-répertoires.

find . -name '*.gz' -exec gunzip '{}' \;

20voto

techedemic Points 321

Il y a évidemment plus d'une façon de procéder.

    # This will find files recursively (you can limit it by using some 'find' parameters. 
    # see the man pages
    # Final backslash required for exec example to work
    find . -name '*.gz' -exec gunzip '{}' \;

    # This will do it only in the current directory
    for a in *.gz; do gunzip $a; done

Je suis sûr qu'il existe d'autres moyens, mais celui-ci est probablement le plus simple.

Et pour l'enlever, il suffit de faire un rm -rf *.gz dans le répertoire applicable

3voto

Jokerius Points 194

Extrait tous les fichiers gz du répertoire courant et de ses sous-répertoires :

 find . -name "*.gz" | xargs gunzip

3voto

Neelam Points 227

Si vous voulez extraire un seul fichier, utilisez :

gunzip fichier.gz

Il extraira le fichier et supprimera le fichier .gz.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X