Necesita una -r
u --no-run-if-empty
opciones.
Tenga en cuenta que este comportamiento particular es difícil de hacer multiplataforma. Versiones BSD de xargs
ejecución con -r
por defecto. La versión de GNU lo necesita. La versión de FreeBSD xargs
ignora el -r
indicador de compatibilidad con GNU. La versión de Mac OS X ni siquiera acepta la bandera y arroja un error illegal option
.
A continuación, puede optar por utilizar una detección de sistema operativo basada en $OSTYPE
escribir un script multiplataforma. Aún mejor, trate de detectar el comportamiento de xargs
sí mismo. Ejecútelo con -r
y si eso falla (código de estado> 0), ejecútelo sin -r
.