¿Qué es el comando «xargs»?

¿Qué es el comando “xargs”?

¿Qué es el comando «xargs»?

VALORACIÓN DEL ARTÍCULO:
5/5


El comando xargs se usa típicamente en una línea de comandos donde la salida de un comando se pasa como argumento de entrada a otro comando.

En muchos casos, no se necesita ningún comando especial como xargs para lograrlo, ya que los operadores «pipe» y «redirection» realizan el mismo tipo de transacción. Sin embargo, a veces hay problemas con el mecanismo básico de tuberías y redireccionamiento, por ejemplo, si los argumentos contienen espacios que los xargs superan.

Además, xargs ejecuta el comando especificado repetidamente, si es necesario, para procesar todos los argumentos que se le han dado. De hecho, puede especificar cuántos argumentos deben leerse del flujo de entrada estándar cada vez que el xargs ejecute el comando especificado.

Cuándo usarlo

En general, el comando xargs debe ser usado si la salida de un comando debe ser usada como parte de las opciones o argumentos de un segundo comando al que se envían los datos (usando el operador de tubería «|»). La tubería regular es suficiente si se pretende que los datos sean la entrada (estándar) del segundo comando.

Por ejemplo, si utiliza el comando ls para generar una lista de nombres de archivo y directorios, y luego pipetea esta lista en el comando xargs que ejecuta echo, puede especificar cuántos nombres de archivo o nombres de directorio son procesados por echo en cada iteración de la siguiente manera:

En este caso, echo recibe cinco nombres de archivos o directorios a la vez. Dado que echo añade un nuevo carácter de línea al final, se escriben cinco nombres en cada línea.

Si ejecuta un comando que devuelve un número grande e impredecible de elementos (por ejemplo, nombres de archivos) que se pasan a otro comando para su procesamiento posterior, es una buena idea controlar el número máximo de argumentos que recibe el segundo comando para evitar sobrecargas y caídas.

Algunos ejemplos

La siguiente línea de comandos particiona el flujo de nombres de archivos producidos al encontrar los grupos de 200 antes de pasar al comando cp, que los copia al directorio backup.

El elemento «./» del comando find especifica el directorio actual para la búsqueda. El argumento «-type f» restringe la búsqueda a los archivos, y la bandera «-nombre «*.txt» filtra aún más cualquier cosa que no tenga la extensión «.txt». El indicador -i en xargs indica que la notación {} representa cada nombre de archivo del vapor.

El siguiente comando encuentra los archivos nombrados core en o debajo del directorio /tmp y los elimina.

find /tmp -nombre núcleo -tipo f -print | xargs /bin/rm -f

Tenga en cuenta que esto no funcionará correctamente si hay nombres de archivo que contengan líneas nuevas, comillas simples o dobles, o espacios. La siguiente versión procesa los nombres de archivos de tal manera que los nombres de archivos o directorios que contengan comillas simples o dobles, espacios o líneas nuevas se manejen correctamente.

find /tmp -nombre núcleo -tipo f -print0 | xargs -0 /bin/rm -f

En lugar de la opción -i también puede utilizar el indicador -I que especifica la cadena que es reemplazada por la línea de entrada en los argumentos de comando como en este ejemplo:

ls dir1 | xargs -I {} -t mv dir1/{} dir/{} /code>
La cadena de sustitución se define como "{}". Esto significa que cualquier ocurrencia de "{}" en los argumentos del comando es reemplazada por el elemento de entrada enviado a args a través de la operación de la tubería. Esto le permite colocar los elementos de entrada en posiciones específicas en los argumentos del comando a ejecutar (repetidamente).

TAMBIÉN TE INTERESA

casa-airbnb-en-Santa-Cruz-de-Tenerife

Viajar solo: una opción con funciones añadidas en Airbnb

Viajar solo es una experiencia única según testimonios que se lanzan a hacer turismo en solitario. Te ayuda a conocerte a ti mismo más y mejor, te exige sacar tus habilidades sociales para conectar con gente durante la travesía y, al no tener ataduras conyugales, te permite encontrar un ligue allá donde estés. Índice de

sinalogy-BC500-y-TC500

Estas cámaras de videovigilancia de Sinalogy merecen la pena

Las cámaras de videovigilancia son un elemento fundamental para todo aquel quiera reforzar la seguridad en una casa o en una empresa. Recientemente, se ha conocido que la vivienda del jugador del Real Madrid, Rodrygo, era asaltada mientras el delantero disputaba la final de la Copa del Rey en Sevilla. No es la primera que

beneficios-de-chatGPT-para-emprendedores

8 usos de ChatGPT para cualquier emprendedor

Estamos en la era de ChatGPT y el boom de las aplicaciones de inteligencia artificial. Junto al popular desarrollo de OpenAI, han aparecido un sinfín de soluciones para usuarios y empresas. De hecho, se ha popularizado tanto la inteligencia artificial que es necesario parar porque no se sabe hasta qué punto podría ser dañina. Como

Tecnologia Linea de Gol

La tecnología detrás de la Tecnología de la Línea de Gol

La Tecnología de la Línea de Gol utiliza cámaras de alta velocidad para determinar si el balón ha cruzado completamente la línea, asegurando que los goles sean concedidos de manera más precisa. Este sistema se ha vuelto obligatorio en competiciones de fútbol en todo el mundo desde el 2012, y ha tenido un impacto positivo en la eliminación de controversias y en mejorar la experiencia de los aficionados.

iOS-16

¿La última actualización de iOS 16 antes de que llegue iOS 17?

Los expertos en el mundo Apple pensaban que iOS 16 tendría unas cuantas actualizaciones y no han fallado. Los últimos rumores sobre un nuevo desarrollo del sistema operativo de los iPhone apuntan a la versión de iOS 16.6. Y es que apenas se estaba trabajando en la versión de iOS 16.5, cuando un informe de