|
|
|
|
Bonjour
je suis sous unix (aix).
j'aimerais écrire un script qui me permette de déplacer tous les fichiers du répertoire REP1 contenant une chaine donnée vers un autre répertoire REP2.
exemple
sh monscript.sh CHAINE REP1 REP2
je n'ai rien trouvé dans le forum ! peut-être que je m'y suis mal pris.
je pourrai me lancer avec une boucle sur chaque fichier et tester le retour d'un grep, mais je ne trouverai pas ça très propre.
si vous avez un avis sur la question et des conseils, eje suis preneur.
merci
bonne journée !
Jon
Salut, ben il n'y a pas d'autre moyen. Il n'y a aucun moyen de lire ce qui se trouve dans un fichier sans l'avoir ouvert. Il n'y a aussi aucun moyen de lire d'un seul coup plusieurs fichiers, a moins de travailler avec les blocs du disque dur mais la c'est une autre paire de manche (programmation bas niveau).
tafiscobar "lou waye def bopame"
|
Salut,
|
C'est bon !
|
Re,
lami20j@debian:~$ ls -1 salut*
salut1
salut2
salut3
salut4
salut5
salut6
salut7
salut8
salut9
lami20j@debian:~$ cat salut*
Bonjour
Au revoir
Bonjour
Au revoir
Bonjour
Au revoir
Bonjour
Au revoir
Bonjour
lami20j@debian:~$ ls -l trash/salut*
ls: trash/salut*: Aucun fichier ou répertoire de ce type
lami20j@debian:~$ egrep -l Bonjour salut* | xargs -i{} cp {} trash/
lami20j@debian:~$ ls -l trash/salut*
-rw-r--r-- 1 lami20j lami20j 8 2006-09-08 18:57 trash/salut1
-rw-r--r-- 1 lami20j lami20j 8 2006-09-08 18:57 trash/salut3
-rw-r--r-- 1 lami20j lami20j 8 2006-09-08 18:57 trash/salut5
-rw-r--r-- 1 lami20j lami20j 8 2006-09-08 18:57 trash/salut7
-rw-r--r-- 1 lami20j lami20j 8 2006-09-08 18:57 trash/salut9
lami20j@debian:~$ cat trash/salut*
Bonjour
Bonjour
Bonjour
Bonjour
Bonjour
lami20j@debian:~$ lami20j
P.S. Jipicy c'est toi qui m'a appris xargs ;) |