[Linux-31] tri par nom

jpcas jpcas at free.fr
Mer 7 Jan 18:16:07 CET 2015


Le 07/01/2015 14:23, jdd a écrit :
> Bonjour,
> 
> Dans la même veine que le message précédent, comment trier tous les
> fichiers pour les mettre dans un répertoire ayant comme nom la première
> lettre du nom?
> 
> autant de répertoires que de signes de l'alphabet
> 
> merci
> jdd


Salut,

Une idée parmi d'autres…

$ tree -F
.
|-- all.md5
|-- dialog.sh*
|-- inotify2.sh
|-- inotify.sh
|-- rep/
`-- wificheck.sh

1 directory, 5 files

$ for i in *.*;do rep="${i::1}" && mkdir -vp "${rep^}" && mv -v "${i}"
"${rep^}"/"${i}";done

mkdir: création du répertoire «A»
«all.md5» -> «A/all.md5»
mkdir: création du répertoire «D»
«dialog.sh» -> «D/dialog.sh»
mkdir: création du répertoire «I»
«inotify2.sh» -> «I/inotify2.sh»
«inotify.sh» -> «I/inotify.sh»
mkdir: création du répertoire «W»
«wificheck.sh» -> «W/wificheck.sh»

$ tree -F
.
|-- A/
|   `-- all.md5
|-- D/
|   `-- dialog.sh*
|-- I/
|   |-- inotify2.sh
|   `-- inotify.sh
|-- rep/
`-- W/
    `-- wificheck.sh

5 directories, 5 files

;-))

JP.



Plus d'informations sur la liste de diffusion Linux-31