Petit script en Bourne shell

Jamsss -  
jamsss Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai écrit ce petit script en Bourne shell qui sélectionne les fichiers possédant une extension et qui les range dans le répertoire dont le nom est l'extension (et qui le crée s'il n'existe pas)

#!/bin/sh

cd /home/christophe/Programmation/Test/x

for i in `ls *.*` 2>/dev/null
do
ext=${i##*.}
if [ ! -e $ext ]
   then mkdir $ext
        echo le répertoire $ext a été crée.
fi
mv *.${ext} ${ext}
echo Le fichier $i a été déplacé dans $ext.
done


Le programme fonctionne mais j'obtiens des erreurs du type : "mv: ne peut évaluer `*.c': Aucun fichier ou dossier de ce type"

Comment corriger ces erreurs ou bien peut être tout simplement les ignorer ?

Merci de votre aide
Jamsss
A voir également:

3 réponses

jamsss Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
 
up
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Salut,

mv *.${ext} ${ext}

mv "${i}" "${ext}/"

Plutôt, non ?
0
jamsss Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
 
oui en effet ça marche mieux merci ! je suis débutant en Bsh, pourquoi tu met des " " ?

j'ai fait ça

mv ${i} ${ext}

et ça marche bien aussi
0