Boucle for + move de fichiers
Bonjour,
J'ai des petits soucis avec la commande for et le shell unix pour renommer des fichiers.
J'ai dans un fichier txt par exemple plusieurs lignes comme celle-ci :
/rep/rep/rep/rep1/fichier /dir/dir/dir/fichier2
je voudrais tout simplement les déplacer du premier argument fichier vers le deuxieme fichier2
Voici le script :
for file in "`cat list.txt`"
do
mv "$file"
done
Il me demande une destination.
Quelqu'un aurait-il une solution ?
Merci
J'ai des petits soucis avec la commande for et le shell unix pour renommer des fichiers.
J'ai dans un fichier txt par exemple plusieurs lignes comme celle-ci :
/rep/rep/rep/rep1/fichier /dir/dir/dir/fichier2
je voudrais tout simplement les déplacer du premier argument fichier vers le deuxieme fichier2
Voici le script :
for file in "`cat list.txt`"
do
mv "$file"
done
Il me demande une destination.
Quelqu'un aurait-il une solution ?
Merci
Configuration: Windows Vista Firefox 3.0.14
2 réponses
-
ModérateurSalut,
C'est ça que tu veux?lami20j@debian:~$ ls -l {aaa,bbb}1 -rw-r--r-- 1 lami20j lami20j 0 oct 16 20:21 aaa1 -rw-r--r-- 1 lami20j lami20j 0 oct 16 20:21 bbb1 lami20j@debian:~$ ls -l {aaa,bbb}2 ls: ne peut accéder aaa2: Aucun fichier ou répertoire de ce type ls: ne peut accéder bbb2: Aucun fichier ou répertoire de ce type lami20j@debian:~$ cat fic /home/lami20j/aaa1 /home/lami20j/aaa2 /home/lami20j/bbb1 /home/lami20j/bbb2 lami20j@debian:~$ for i in $(cat fic|tr " " "_");do mv -v ${i/_/ };done `/home/lami20j/aaa1' -> `/home/lami20j/aaa2' `/home/lami20j/bbb1' -> `/home/lami20j/bbb2' lami20j@debian:~$ ls -l {aaa,bbb}1 ls: ne peut accéder aaa1: Aucun fichier ou répertoire de ce type ls: ne peut accéder bbb1: Aucun fichier ou répertoire de ce type lami20j@debian:~$ ls -l {aaa,bbb}2 -rw-r--r-- 1 lami20j lami20j 0 oct 16 20:21 aaa2 -rw-r--r-- 1 lami20j lami20j 0 oct 16 20:21 bbb2 lami20j@debian:~$
-
Oui merci beaucoup