
Estos son los archivos del directorio:
Ford-Mustang-001.jpg
Ford-Mustang-002.jpg
Ford-Mustang-003.jpg
Chevy-Impala-001.jpg
Chevy-Impala-002.jpg
Chevy-Impala-003.jpg
Me gustaría ordenarlos en subcarpetas:
/Mustang
/Impala
Respuesta1
La respuesta obvia:
Simplemente cree los directorios y coloque los archivos en ellos.
mkdir Mustang Impala
mv *Mustang*.jpg Mustang/
mv *Impala*.jpg Impala/
Se llamaglobalización de archivos; es una característica del caparazón.
Si tiene una gran cantidad de archivos y necesita crear muchos directorios diferentes para acomodarlos, intenteLa respuesta de JJoao.
Respuesta2
usando prename (cambiador de nombre de Perl)
prename 'if(/(.+?)-(.+?)-(.*)/){mkdir $2; $_="$2/$_"}' *.jpg
Respuesta3
Dividiría el nombre del archivo usando awk. awk {split $0, a, "-"; mkdir a[1]; mv $0 a[1]/}
Si desea cambiar el nombre, puede hacerlo con el programa mv.