XARGS с для л oop пр - PullRequest
       83

XARGS с для л oop пр

0 голосов
/ 07 апреля 2020

Привет, я работаю в bash оболочке с файлом имен файлов, который содержит несколько файлов для одного и того же образца в разных строках

file.txt
Filename1_1 SampleName1
Filename1_2 SampleName1
Filename2_1 SampleName2
Filename2_2 SampleName2

Я пытаюсь использовать xargs с a для l oop чтобы передать имена файлов в один аргумент (т.е. вывести Filename1_1 FileName1_2). Который будет иметь эффект:

cat file.txt | xargs bash -c 'echo ${0} ${2}'

Так как это довольно длинный файл, я не могу использовать его несколько раз, и подумал, что использование для l oop поможет. Но я не получаю вывод, который я ожидал. Вот то, что я подумал, было бы просто сделать.

У кого-нибудь есть идея, чтобы заставить его работать так, как я хочу?

Я ищу вывод, похожий на приведенный ниже, для передачи каждой строки другой функции

Filename1_1 Filename1_2
Filename2_1 Filename2_2
Filename3_1 Filename3_2
Filename4_1 Filename4_2

1 Ответ

1 голос
/ 08 апреля 2020

Просто используйте -n2 и укажите максимальное количество аргументов.

<file.txt xargs -n2 bash -c 'echo $1 $2' _
...