GNU/Linux >> Tutoriels Linux >  >> Linux

Linux :supprimer les extensions de fichiers pour plusieurs fichiers

Vous pouvez explicitement passer une chaîne vide comme argument.

rename .old '' *.old

Et avec les sous-dossiers, find . -type d -exec rename .old '' {}/*.old \; . {} est le substitut de l'entrée trouvée avec find , et \; termine l'arglist pour la commande donnée après -exec .


rename est légèrement dangereux, puisque selon sa page de manuel :

rename renommera les fichiers spécifiés en remplaçant le premier occurrence de...

Il fera volontiers la mauvaise chose avec des noms de fichiers comme c.txt.parser.y .

Voici une solution utilisant find et bash :

find -type f -name '*.txt' | while read f; do mv "$f" "${f%.txt}"; done

Gardez à l'esprit que cela se cassera si un nom de fichier contient une nouvelle ligne (rare, mais pas impossible).

Si vous avez trouvé GNU, voici une solution plus solide :

find -type f -name '*.txt' -print0 | while read -d $'\0' f; do mv "$f" "${f%.txt}"; done

J'utilise ceci :

find ./ -name "*.old" -exec sh -c 'mv $0 `basename "$0" .old`.new' '{}' \;

La version Perl de rename peut supprimer une extension comme suit :

rename 's/\.txt$//' *.txt

Cela pourrait être combiné avec rechercher afin de créer également des sous-dossiers.


Linux
  1. Comment utiliser la commande 'find' pour rechercher plusieurs noms de fichiers (extensions) sous Linux

  2. Comment renommer plusieurs fichiers à l'aide de Find ?

  3. Attendre la fin du téléchargement de plusieurs fichiers ?

  4. Utilisez Find and Locate pour rechercher des fichiers sous Linux

  5. Comment renommer plusieurs fichiers ensemble sous Linux en utilisant 3 méthodes

Comment renommer un ou plusieurs fichiers sous Linux

8 méthodes pour renommer plusieurs fichiers à la fois sous Linux

Comment trouver des fichiers basés sur l'horodatage sous Linux

Comment trouver des fichiers modifiés au cours des dernières 24 heures sous Linux

Comment trouver des fichiers en double sous Linux et les supprimer

Linux renommer l'extension de plusieurs fichiers