Tema: xargs
-
Códigos de salida de find y xargs: el 0/>0 básico de find frente a la escala 123-127 de xargs
find solo garantiza 0 si todo salió bien y un valor mayor que 0 si hubo errores, sin más detalle a propósito. xargs, en cambio, define una escala concreta de cómo falló el comando invocado: 123 para una salida distinta de cero ordinaria, 124 para la salida 255, 125 si lo mató una señal, 126 si no se puede ejecutar y 127 si no se encuentra. Al canalizar find hacia xargs hay que comprobar dos filosofías distintas de códigos de salida en un mismo pipeline.
-
«Argument list too long» (E2BIG) y el límite ARG_MAX
Un comando de shell que se expande a demasiados argumentos falla con «Argument list too long», el error E2BIG de execve(2) causado por el límite ARG_MAX del kernel. El artículo explica cómo medir el límite y cómo sustituir un glob que falla por xargs o por el procesamiento por lotes de find con -exec ... +, en lugar de intentar sortearlo con comillas.
Legible por máquina: JSON