Bonjour à tous.
Je me permets de vous solliciter.
Je cherche à réaliser un petit script bash pour renommer des fichiers html dans environ 5000 dossiers par le nom du dossier.
En bref, j'ai 10000 fichiers nommés index.html que je voudrais renommer avec le nom du dossier parent.
Par exemple
1 2
| tutu/toto/index.html > toto.html
tutu/titi/index.html > titi.html |
Je bloque sur le listing prés boucle de traitement.
j'ai fait un
find -type d "chemin"> list.txt
- hic numéro 1 j'ai tous les parents et je n'ai besoin que du dernier ...
Auriez vous quelques minutes à m'accorder afin de réaliser un petit script ?
J'ai trouvé ce script sur le forum, mais il ne fonctionne pas, et je n'ai pas réussi à le débugguer
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| #!/bin/bash
mapfile -t directories < <(find -type d -printf '%P\n')
for d in "${directories[@]}"
do
i=0
for f in "$d""monchemin"/*.html
do
xt="${f##*.}"
mv "$" "$d-$((++i)).$xt"
done
echo "Finished renaming file in $d"
done
echo "Finished batching."
# |
Cordialement.
EDOT Nicolas
Partager