xargs, et comment ne pas l'utiliser grâce à la commande Perl ack

Par Stéphane Payrard (‎cognominal‎) de Paris.pm
Communication éclair
Cible : Tout
Langue :
Tags : ack shell unix xargs


Il est facile de générer des lignes de commande qui excèdent la limite système (trouvable grâce à 'getconf ARG_MAX') ou la mémoire vive disponible (et le trashing disque subséquent dû à la gestion de la mémoire vive, mais là ulimit est votre ami).
C'est souvent le résultat d'une commande qui contient une sous-commande en backquote. En pipant cette sous-commande dans un xargs, on évite le problème. Mais on tombe sur ce problème généralement en recherchant des chaînes dans un grand nombre de fichiers. La commande Perl ack est votre sauveur. On verra ses multiples options.