Xargs

為什麼 xargs 與 echo 一起使用,而不是 sort?

  • May 1, 2021

在 xargs 手冊頁有一個用法範例

cut -d: -f1 < /etc/passwd | sort | xargs echo

為什麼在這種情況下 echo 與 xargs 一起使用,而沒有排序,

甚至兩個命令都具有相似的語法,其中參數跟在命令後面?

|將左側的輸出與右側的輸入連接起來。

echo列印它的論點。它不會對發送到其輸入的數據做任何事情。因此,xargs用於echo與輸入一起呼叫。

sort另一方面,它不會對它的參數進行排序,而是對它的輸入數據進行排序。

因此,直接將輸入放入排序是有意義的。

(但是,xargs echo真的沒有任何意義。這實際上只是將輸出轉換sort為參數,只是將它們轉換回輸出。不太確定這裡的意圖是什麼:cut -d: -f1 < /etc/passwd | sort會起作用;好的,後面會有一個換行符每個使用者,但老實說,這不是 xargs 的工作,而是sedor的工作awk,它會直接在 /etc/passwd 上直接完成使用者想要的操作;但是,我很漂亮確保您對該命令行的敏感性不是很感興趣,更多的是為什麼 xargs 以這種方式使用。)

引用自:https://unix.stackexchange.com/questions/647617