Renombrar archivos y carpetas recursivas

0

Necesito cambiar el nombre de cada subcarpeta de una ruta especificada. Por ejemplo tengo una estructura de directorio como esta:

project/
   /x
      /something
          /somethingElse
              /x
          /x.someext
   /notXButTheresXInASubfolder
          /something
              /x

y necesito cambiarlo a:

project/
   /y
      /something
          /somethingElse
              /y
          /y.someext
   /thisContainsXIntheNameButIsNotx
          /something
              /y

Lo haría idealmente con un script de bash, pero no tengo idea de cómo hacerlo ...

user3807877
fuente

Respuestas:

0
DIRS=$(find /path/to/project -type d -name "x" | sort -r)

while read R; do
  test -z "$R" && continue;
  B=$(dirname "$R")
  mv "$R" "$B/y"
done < <(echo -en "$DIRS")
Eugen Rieck
fuente