xargs
xargs permet de “renverser” une liste: On lui fournit une liste et lui passe cette liste en paramètres à la commande spécifiée: chaque ligne de la liste devient un paramètre.
Cela permet d'outrepasser les limites en taille de la ligne de commande ou gérer les noms de fichiers avec des espaces/retours chariots/… par exemple (il faut utiliser l'option -0
vraisemblablement en combinaison avec l'option -print0
de find).
Exemples
Chercher un motif par grep dans tous les fichiers de tous les sous réportoires courants:
find . -type f | xargs grep motif
Effacer tous les fichiers (y compris dans les sous répertoires) mais sans effacer la structure de dossiers:
find . -type f | xargs rm
Il s'agit ici d'exemple pour illustrer xargs, mais dans le cas de find il vaut mieux utiliser -exec.
find . -type f -exec grep motif {} \;
find . -type f -exec rm {} \;
filtres/xargs.txt · Dernière modification: 2009/02/27 13:04 par danielcaillibaud