dimanche 9 novembre 2014
Renommer des dossiers récursivement
#!/bin/bash
#
# script bash récursif de renommage de dossiers
# - remplacement d'espace par underscore
# - suppressions des accents
#
# attention : ce script agit sur toute la sous-arborescence
# d'un dossier et va modifier chaque nom de dossier
# enlever -i derrière la commande mv pour enlever la confirmation
renommer() {
for i in *
do
if test -d "$i"
then
avant="$i"
apres="$(echo "$i" | sed 's/ /_/g' |
sed "s/'/_/g" |
sed 's/[àâ]/a/g' |
sed 's/[ç]/c/g' |
sed 's/[éè]/e/g' |
sed 's/[ï]/i/g' |
sed 's/[ô]/o/g' |
sed 's/ù/u/g')"
# pour passer les majuscules en minuscules
# utiliser la commande tr (translate)
if [ ! "$avant" = "$apres" ] ; then
echo "$avant"
echo "$apres"
echo
mv -i "$avant" "$apres"
cd "$apres"
else
cd "$avant"
fi
renommer
cd ..
fi
done
}
renommer
Inscription à :
Publier les commentaires (Atom)
Aucun commentaire:
Enregistrer un commentaire