j'ai pas tout regardé en detail
Mais certaines choses ne vont pas.
Ton expression régulière combinée a ton find ne va pas: [0-9,A-Za-z] la virgule n'a pas lieu d'être il me semble, et de toute façon je ne pense pas que les expression régulières comme ça marche dans un find.
Mieux vaut dans ce cas piper find avec un grep comme ceci
find . -type f | grep pattern.
Pour ton problème je déclarerais d'abord des variables pour être plus clair. Donc tu pourrais avoir quelque chose du genre:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
EXT_C="c"
EXT_PNG="png"
....
for f in $(ls *.*)
do
case ${f#*\.} in
$EXT_C )
mkdir -p $EXT_C; mv $f $EXT_C/$f
$EXT_PNG )
.....
esac
done |
A toi de compléter et d'ajouter d'autres filtres.