GNU/Linux >> Tutoriales Linux >  >> Linux

Ejemplos de comandos xargs en Linux

El comando xargs lee la entrada estándar y ejecuta un comando para cada argumento proporcionado. Cada argumento debe estar separado por espacios en blanco. El operador de canalización se utiliza para convertir la salida del primer comando en la entrada del segundo comando. El comando xargs se usa comúnmente con el comando find para operar en cada resultado que se encuentra dentro de la búsqueda de archivos o directorios.

Sintaxis

La sintaxis general del comando xargs es:

# command [options] [arguments] | xargs [options] {command}

Supongamos que desea eliminar todos los archivos del directorio /foo que tienen la extensión .pdf. Puede usar xargs para automatizar el proceso:

# find /foo -type f -name "*.pdf" | xargs rm

El comando de búsqueda busca todos los archivos en /foo que tengan una extensión .pdf y luego canaliza el resultado al comando xargs. Debido a que los resultados están delimitados por un espacio, el comando xargs ejecutará el comando rm para cada archivo en los resultados, eliminando todos los archivos PDF del directorio.

El comando xargs tiene varias opciones, como se muestra a continuación:

Opción Descripción
-I {cadena de reemplazo} Considere cada línea en la entrada estándar como un único argumento.
-L {número de líneas} Leer un número específico de líneas de la entrada estándar y concatenarlas en una cadena larga.
-p Avisar al usuario antes de cada comando.
-n {número de argumentos} Lea el número máximo de argumentos de la entrada estándar e insértelos al final de la plantilla de comando.
-E {fin de cadena} Representa el final de la entrada estándar.
-t Escriba cada comando en la salida de error estándar antes de ejecutar el comando.
-s {tamaño máximo} Establece el tamaño máximo permitido de una lista de argumentos en un número específico de caracteres.

Ejemplos de comandos xargs

1. Ejecute un comando usando los datos de entrada como argumentos:

# arguments_source | xargs command

2. Ejecute varios comandos encadenados en los datos de entrada:

# arguments_source | xargs sh -c "command1 && command2 | command3"

3. Elimine todos los archivos con una extensión `.backup` (`-print0` usa un carácter nulo para dividir los nombres de los archivos, y `-0` lo usa como delimitador):

# find . -name '*.backup' -print0 | xargs -0 rm -v

4. Ejecute el comando una vez para cada línea de entrada, reemplazando cualquier ocurrencia del marcador de posición (aquí marcado como `_`) con la línea de entrada:

# arguments_source | xargs -I _ command _ optional_extra_arguments

5. Ejecuciones paralelas de hasta procesos `max-procs` a la vez; el valor predeterminado es 1. Si `max-procs` es 0, xargs ejecutará tantos procesos como sea posible a la vez:

# arguments_source | xargs -P max-procs command


Linux
  1. 7 ejemplos de comandos Linux df

  2. 8 ejemplos de comandos TR de Linux

  3. Ejemplos de comandos rm en Linux

  4. Ejemplos de comandos ps en Linux

  5. w Ejemplos de comandos en Linux

16 ejemplos de comandos de eco en Linux

9 ejemplos de comandos tee en Linux

9 ejemplos de comandos diff en Linux

Comando Xargs en Linux

Ejemplos de comandos xargs de Linux

Ejemplos de comandos id en Linux