xargs обробляє рядок як кілька аргументів


1

Linux GNU xargs

У мене є файл doit with

arg1 arg2 arg3 arg4
arg1 arg2 arg3 arg4

Я хочу виконати

command arg1 arg2 arg3 arg4
command arg2 arg2 arg3 arg4

Що я не можу зрозуміти, як це зробити з xargs

Якщо це робиться xargs -a doit -I % command %

Він працює

command 'arg1 arg2 arg3 arg4'

i.e виконати команду з першим аргументом = 'arg1 arg2 ....'


Я думаю, що ви використовуєте неправильний інструмент. xargs призначений для збору невідомої кількості аргументів з STDIN або файл і запустіть команду невідомо. Ви точно знаєте, скільки аргументів у вас є і скільки разів виконували ваші команди.
Kevin Panko

Відповіді:


0

Якщо ви використовуєте GNU Parallel, ви можете:

parallel -a doit eval command

або:

parallel -a doit --colsep ' ' command

Щоб дізнатися більше, перегляньте вступне відео для швидкого вступу: https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1 і пройти через підручник (man parallel_tutorial). Ви командний рядок з вами за це.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.