1
我有兩個不同的文件file1.txt和file2.txt,我需要將兩個文件的內容(單獨)作爲arg1和arg2傳遞給程序。如何使用xargs和cat將兩個不同文件的內容作爲參數進行管道傳輸?
我可以做一個文件,
cat file1.txt | xargs ./prog
但我怎麼能管這兩個文件?
謝謝。你可以這樣做
我有兩個不同的文件file1.txt和file2.txt,我需要將兩個文件的內容(單獨)作爲arg1和arg2傳遞給程序。如何使用xargs和cat將兩個不同文件的內容作爲參數進行管道傳輸?
我可以做一個文件,
cat file1.txt | xargs ./prog
但我怎麼能管這兩個文件?
謝謝。你可以這樣做
一種方法是使用命令替換,而不是xargs
,就像這樣:
./prog "$(<file1.txt)" "$(<file2.txt)"
如果你必須保持與POSIX sh
兼容,請不要使用以下:
./prog "`cat file1.txt`" "`cat file2.txt`"
請注意,如果每個文件中有多個單詞,並且希望將它們作爲單獨的參數對待,請刪除" "
引號(但不包括$()
或` `
)。
顯示每個文件的內容的一些例子... – iamauser
您可能想要更改'。/ prog',例如添加一個選項'-f',使用此選項,這兩個參數將是文件名。那麼你可以執行'./prog -f file1 file2'並在腳本中讀取這兩個文件。 – Kent
@Kent我無法改變編。 – zeion