Xargs y tuberías, combinando varios comandos

Xargs Pipes Combining Multiple Commands

Una tubería es un mecanismo de comunicación que convierte la salida de un programa en la entrada de otro programa.

Xargs convierte una lista de argumentos en pequeños segmentos y los pasa a otros comandos.



Un simple ejemplo:



|_+_|

Estos dos comandos se ven muy similares.



El punto que confunde las tuberías y los xargs es que pasan el contenido de la primera mitad a la segunda mitad. ¿Cuál es la diferencia?

Echo '--help' se genera como '--help', que se utiliza como entrada de gato. ¿Es un gato directo '--ayuda'?

no.



El mecanismo de canalización es esencialmente un archivo especial. Y es único, una vez que se leen los datos, se eliminan inmediatamente de la canalización.

Suponiendo que la canalización se considera el archivo test.txt, el primer comando se interpretará como:

|_+_|

Después de comprender la canalización, observe el segundo comando:

|_+_|

Pase la lista de argumentos ... a otros comandos definidos por xargs.

Es decir, podemos tratar el contenido de test.txt como una lista de parámetros, luego pasar la lista a otros comandos y finalmente ejecutar otros comandos.

En otras palabras, xargs pasa el contenido de test.txt al comando cat y finalmente ejecuta el comando cat.

En otras palabras, en el comando anterior, xargs cat finalmente ejecuta cat '--help'.

En otras palabras, el resultado final es salsa morada:

Una variante simple:

|_+_|

¿Qué saldrá por separado?

El primero generará 'archivo1', el segundo generará el contenido del archivo1

Intentalo.