Команда xargs у Linux із прикладами

Команда xargs у Linux із прикладами

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 і виходить.

Вихід:

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