Remplacement des espaces
Résolu
lily
-
bob031 Messages postés 8228 Statut Membre -
bob031 Messages postés 8228 Statut Membre -
Bonjour,
je recherche une commende pour remplacer tous les espaces des noms de répertoire par un caractères _
j'arrive a afficher la liste des dossier et sous-dossier avec
find -name "*\ *" -type d -print
il faut peut etre utiliser un mv pour renommer les dossier mais je pas trop comment m'y prendre pour faire tout les dossier à la fois
lily
je recherche une commende pour remplacer tous les espaces des noms de répertoire par un caractères _
j'arrive a afficher la liste des dossier et sous-dossier avec
find -name "*\ *" -type d -print
il faut peut etre utiliser un mv pour renommer les dossier mais je pas trop comment m'y prendre pour faire tout les dossier à la fois
lily
Configuration: Linux Firefox 3.0.11
4 réponses
-
Déjà traité ici :
http://www.commentcamarche.net/forum/affich 3382569 remplacer espacements dans noms de fichier
Je vois bien un truc dans ce goût :find -name "*\ *" -type d -print | rename 's/\s+/_/g'
Bonne chance -
bonjour,
$ find -depth . | (while read FULLPATH; do BASENAME=`basename "${FULLPATH}"`; DIRNAME=`dirname "${FULLPATH}"`; mv "${DIRNAME}/${BASENAME}" "${DIRNAME}/${BASENAME// /_}"; done)
bien sûr, faire un essai avant dans un répertoire test .....
-
-
j'ai commis une petite erreur : il fallait lire :
find . -depth blablabla
et non pasfind -depth . blablabla
j'ai testé et ça marche aussi !
:-)