Re: Récursivité - shred
geoffroy, lundi 5 novembre 2007, 14:06:56 CET
>
> François Boisson a écrit :
> > Le Sun, 04 Nov 2007 08:01:50 -0800
> > cibox@laposte.net a écrit:
> >
> >> Bonjour,
> >>
> >> Comment fait-on pour utiliser la commande shred sur une
> >> arborescence.
> >
> >
> > $ find . -type f | xargs -n 1 shred
>
> Y-a t'il une différence avec l'utilisation de l'option -exec
> de find ? $ find . -type f -exec shred '{}' \;
Pas ici.
> j'ai du mal à appréhender les contextes propices à
> l'utilisation de xargs. Peut être les deux lignes sont
> équivalentes dans ce cas précis.
Elles sont équivalentes à cause/grâce à -n 1 : cela dit à
xargs de ne passer qu’un seul argument à shred (et donc de
créer d’autres processus pour chacun des autres fichiers).
Sans -n, xargs lance un seul processus pour tous les
arguments. C’est ce qui nous intéresse en général dans xargs.
Exemple ridicule :
$ echo 1 2 3 4 5 6 | xargs echo
1 2 3 4 5 6
$ echo 1 2 3 4 5 6 | xargs -n 2 echo
1 2
3 4
5 6
La forme avec + de l’option -exec de find (-exec cmd {} +)
peut se comporter comme xargs (sans -n).
Note : si des espaces peuvent se glisser dans les noms de
fichiers, le plus simple est d’utiliser les options -print0
de find et -0 de xargs (le passage des noms se fait alors
par des chaînes séparées par des octets 0 plutôt que des
espaces).
--
Sylvain Sauvage
Reply to: