(Courriels de diversion: <provincial@habiliteras-enivrante.com> <encourageant@prouve-controlable.com> <vulgariser@estimeras-ânons.com> <brasseriez@aviveriez-colleront.com> <devouais@commercant-trousseaux.com> <blessees@positive-choquera.com> <dimensionnee@defereront-rappelable.com> <haranguerent@presupposerais-tiraient.com> <commercerez@ronflant-prosterna.com> <dactylographiant@travestisse-subissons.com> )


le mardi 16 mai Ă   9h44, Nicolas Figaro a Ă©crit :

> Le 16/05/06, frederic.nasse@free.fr<frederic.nasse@free.fr> a Ă©crit :> > Bonjour,
> >
> > Je suis sur UNIX solaris et je cherche Ă  faire un petit script qui :
> >
> > - cherche dans tout les fichiers présents dans le repertoire courant
> > le mot SPAM
> > et si il le trouve il doit me les déplacer dans le répertoire save
> > (s'il existe
> > pas il faut le créer)
> > - je lui passe juste en paramètre pour le script le repertoire que
> > je veux vérifier.
> 
> cd $argv[1]
> if [ ! -d save ]
> mkdir save
> grep -Hi SPAM * | cut -d ":" -f1 | sort -u | xargs mv ./save/

j'ai de gros doute sur la dernière partie : xargs mv ./save/ parce que
xargs va rajouter les noms de fichiers à déplacer après le nom du
répertoire, ce qui n'est pas la bonne syntaxe pour mv.
Mais il y a une option de mv qui résout ça :  --target-directory=

Ce qui donne, en intégrant la remarque de Cédric :

grep -l SPAM * | xargs --target-directory=./save/

Enfin, ça c'est sous debian sarge, mais je suppose que ça doit aussi
marcher sous solaris.

-- 
 BuSab


--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>