lsと入力すると、2番目の引数がGNU Parallelに渡されます。

lsと入力すると、2番目の引数がGNU Parallelに渡されます。

私はls次のように見つかったファイルを処理します。

ls /folder/ | parallel -j20 ./command {}

ところで職場番号も通らなければなりません。頑張った

ls /folder/ | parallel -j20 ./command {1} {2} ::: {1..20}
ls /folder/ | parallel -j20 ./command {} {} ::: {1..20}

しかし、うまくいきません。{#}職場番号も渡してみました。

ベストアンサー1

代替文字列は{#}正確に必要なものでなければなりません。例えば、与えられた

$ ls
 file1  'file2 with spaces'  'file3'$'\n''with'$'\n''newlines'   file4   file5

それから

parallel --null echo {#} {} ::: *
1 file1
2 file2 with spaces
3 file3
with
newlines
4 file4
5 file5

または、ARG_MAX制限を超えるのに十分なファイルがある場合は、次のものを使用できます。

printf '%s\0' * | parallel --null echo {#} {}

おすすめ記事