Remplacement des espaces

Résolu
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
Configuration: Linux
Firefox 3.0.11

4 réponses

  1. 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 .....
    1. merci pour vos réponses
      la solution de mamiemando a fonctionné *aléluïa*
      encore merci
      lily
      1. j'ai commis une petite erreur : il fallait lire :
        find . -depth blablabla


        et non pas
        find -depth . blablabla


        j'ai testé et ça marche aussi !

        :-)