Xargs

-L1-n 1 對於xargs 是否相同?

  • February 6, 2021

安全地搜尋和刪除文件

locate  -i nohup.out | xargs -d '\n' -L1 -p rm

定位輸出中的每一行都被 xargs 視為一個參數,那麼它們是否-L1相同-n 1

謝謝。

從手冊:

-L max-

lines 每個命令行最多使用 max-lines 個非空白輸入行。尾隨空白導致輸入行在下一個輸入行邏輯上繼續。暗示-x。

-n max-args

每個命令行最多使用 max-args 個參數。如果超出大小(請參閱 -s 選項),將使用少於 max-args 的參數,除非給出 -x 選項,在這種情況下 xargs 將退出。

-d delim

輸入項以指定字元結束。

$$ … $$

基於這一點和我的理解,在您的情況下-L1,通過傳遞的參數和分隔符從空格更改為(換行符)-n1都等效1``\n``-d

例如,-d如果您的定位輸出中有一個空格,則如果沒有參數,則該行將被拆分為兩個參數,因此 rm with 的 2 種不同用法-n1,而它仍將被視為一個參數且只有一個命令和-L1

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