Shell Geek: renommer plusieurs fichiers à la fois

Shell Geek: renommer plusieurs fichiers à la fois
Shell Geek: renommer plusieurs fichiers à la fois

Vidéo: Shell Geek: renommer plusieurs fichiers à la fois

Vidéo: Shell Geek: renommer plusieurs fichiers à la fois
Vidéo: L'Astuce Pour Envoyer GRATUITEMENT des Gros Fichiers Par Internet. - YouTube 2024, Avril
Anonim

Supposons que vous avez un répertoire avec des centaines de fichiers avec des noms de fichiers incorrects et que vous souhaitez remplacer tous les noms de fichiers contenant tester avec prod. (Ceci est un exemple artificiel). Nous pouvons facilement faire cela avec la commande «for» dans bash, combinée à un peu de bonté bash. Aujourd’hui, nous apprendrons comment remplacer du texte dans une variable dans une boucle for.

La commande "pour" fonctionne comme ceci:

for var in ;do $var;done

Vous pouvez remplacer avec tout modèle de correspondance de fichier, tel que * ou *.txt, et vous pouvez remplacer avec n'importe quelle commande linux. La commande sera exécutée en séquence sur chacun des fichiers correspondant au modèle de correspondance de fichier.

C’est là que la gestion des variables bash le rend encore plus intéressant. Au lieu de faire quelque chose comme «mv $ var», nous pouvons remplacer le texte dans le nom du fichier en utilisant la syntaxe suivante:

${var/originaltext/replacetext}

Alors maintenant, si nous lançons cette commande sur notre répertoire:

for f in *;do mv $f ${f/test/prod};done

Pour chaque fichier correspondant à *, bash exécutera une commande similaire à celle-ci:

mv test.config prod.config

J’ai constaté que la connaissance du shell était précieuse lors de l’administration de serveurs ou simplement pour la gestion de votre collection de fichiers. Elle m’a évité des heures de travail manuel.

Et oui, je réalise qu’un certain nombre d’outils permettent de renommer plusieurs fichiers.

Conseillé: