|
|
|
|
Bonjour à tous !
J'ai besoin d'écrire un script shell permettant de trier des fichiers suivant leur extension et de les déplacer dans un dossier créé par mes soins.
Le dossier rep_text est censé contenir à la fin de l'éxécution du bash tous les fichiers .txt du répertoire d'où a été lancé le script.
Je vous met mon travail car le script me déplace tout le dossier script (d'où est lancé le script) au lieu des fichiers en eux-même.
Si quelqu'un aurait l'obligence de m'expliquer pourquoi mon script ne fait pas ce que je demande, merci d'avance.
Le script est exécuté à partir du dossier : /home/bandit/Script/
Script :
#!/bin/sh
if [ ! -d /home/bandit/test_script ]
then
mkdir /home/bandit/test_script
mkdir /home/bandit/test_script/rep_text
mkdir /home/bandit/test_script/rep_mp3
mkdir /home/bandit/test_script/rep_tmp
fi
txt= find *.txt
mp3= find *.mp3
tmp= find *.tmp
val="/home/bandit/Script/"
echo "$txt"
echo "$mp3"
echo "$tmp"
cd ..
mv "/home/bandit/Script/$txt" /home/bandit/test_script/rep_text/
#mv $val$mp3 $val
#mv /home/bandit/Script/$tmp /home/bandit/test_script/rep_tmp
Salut,
txt="$(find *.txt)";-)) Z'@+...che. JP : Zen, my Nuggets ! ;-) Le savoir n'est bon que s'il est partagé. |
Bah tout simplement parce que je n'y ai pas pensé oh la honte MDR !
|
Salut,
lami20j@deb:~/trash$ ls -1 *.avi
09-20070804114231.avi
09-20070805114231.avi
09-20070806114231.avi
09-20070807114231.avi
09-20070812114231.avi
09-20070816114231.avi
lami20j@deb:~/trash$ ls -1 *.avi | sort --key=4,8
09-20070804114231.avi
09-20070805114231.avi
09-20070806114231.avi
09-20070807114231.avi
09-20070812114231.avi
09-20070816114231.avi
lami20j@deb:~/trash$ ls -1 *.avi | grep -Eo '[0-9]{8}'
20070804
20070805
20070806
20070807
20070812
20070816
lami20j |