xargs — це команда Unix, яку можна використовувати для створення та виконання команд із стандартного введення.
Важливість:
Деякі команди, такі як grep, можуть приймати вхідні дані як параметри, але деякі команди приймають аргументи, це те місце, де xargs з’явилися.
Синтаксис команди `xargs` в Linux
xargs [options] [command]>
Параметри, доступні в команді `xargs` в Linux
| Опції | опис |
|---|---|
| -0 | елементи введення завершуються нульовим символом замість пробілів |
| -файл | читати елементи з файлу замість стандартного введення |
| – роздільник = розділити | елементи введення завершуються спеціальним символом |
| -E eof-str | встановити кінець рядка файлу на eof-str |
| -заміняю-вул | замінити випадки replace-str у початкових аргументах іменами, зчитаними зі стандартного введення |
| -L max-рядків | використовуйте щонайбільше максимальну кількість рядків непорожніх рядків введення на командний рядок. |
| -стор | запитувати користувача про те, чи запускати кожен командний рядок і читати рядок із терміналу. |
| -р | Якщо стандартний ввід не містить непробілів, не запускайте команду |
| -x | вихід, якщо розмір перевищено. |
| – допомога | надрукувати підсумок параметрів у xargs і вийти |
| – версія | надрукувати номер версії. xargs і вихід |
приклад:

приклад xargs
Нижче наведено програму на С, яка читає текстовий файл test.txt, а потім використовує вихідні дані цієї програми як вхідні дані для команди дотику. вміст текстового файлу test.txt
file1 file2 file3 file4>
C
// C program to read contents of file> #include> // Driver Code> int> main(){> >int> c;> >FILE> *file;> >// open file test.txt> >file =>fopen>('test.txt', 'r');> >if> (file) {> >// read file line-by-line until> >// end of file> >while> ((c =>getc>(file)) != EOF)> >putchar>(c);> >fclose>(file);> >}> >return> 0;> }> |
>
>
Вихід:
file1 file2 file3 file4>
Тепер скористайтеся виводом ./a.out як вхід для сенсорної команди

приклад xargs із дотиком
Використання команди з параметрами:
xargs --version>
Друкує номер версії команди xargs і виходить.
Вихід:
змінити назву каталогу linux
xargs (GNU findutils) 4.7.0-git Copyright (C) 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.>
xargs -a test.txt>
Він покаже вміст файлу
file1 file2 file3 file4>
xargs -p -a test.txt>
Параметр -p запитує підтвердження перед запуском кожного командного рядка. Він запускає командний рядок, лише якщо відповідь починається з «y» або «Y». Вихід:
# xargs -p -a test.txt echo file1 file2 file3 file4 ?...y file1 file2 file3 file4 # xargs -p -a test.txt echo file1 file2 file3 file4 ?...n>
xargs -r -a test.txt>
Тепер припустімо, що файл test.txt порожній, а наведена вище команда виконується, параметр -r гарантує, що якщо стандартний ввід порожній, команда не виконується, тому наведена вище команда не виведе жодних результатів, але якщо наведена вище команда буде виконана без опції -r він виведе порожній рядок. Перегляньте зображення нижче як приклад:

xargs з опцією -r