linux過濾命令 xargs

2021-10-23 01:38:43 字數 1271 閱讀 4437

xargs命令是給其他命令傳遞引數的乙個過濾器,也是組合多個命令的乙個工具。它擅長將標準輸入資料轉換成命令列引數,xargs能夠處理管道或者stdin並將其轉換成特定命令的命令引數。

xargs也可以將單行或多行文字輸入轉換為其他格式,例如多行變單行,單行變多行。xargs的預設命令是echo,空格是預設定界符。這意味著通過管道傳遞給xargs的輸入將會包含換行和空白,不過通過xargs的處理,換行和空白將被空格取代。xargs是構建單行命令的重要元件之一。

xargs [選項] 引數

-n:多行輸出

-d:自定義乙個定界符

-i:指定乙個替換字串{}

-t:列印出 xargs 執行的命令

-p:執行每乙個命令時彈出確認

測試檔案

[root@test2

~]# cat test.txt

a 18

b 29

c 30

d 4e 5

f 6g 7

直接使用將會以單行顯示

[root@test2

~]# cat test.txt | xargs

a 18 b 2

9 c 3

0 d 4 e 5 f 6 g 7

執行時彈出確認

[root@test2

~]# cat test.txt | xargs -p

echo a 1

8 b 2

9 c 3

0 d 4 e 5 f 6 g 7?.

..

-n顯示每行幾個字元

[root@test2

~]# cat test.txt | xargs -n 4

a 18 b

29 c 3

0 d 4 e

5 f 6 g

7

列印xargs執行的命令

[root@test2

~]# ls | xargs -t

echo anaconda-ks.cfg initial-setup-ks.cfg test.txt

anaconda-ks.cfg initial-setup-ks.cfg test.txt

將ls檢視到的檔案刪除

[root@test2

~]# ls | xargs -i rm

Linux基礎 xargs命令

xargs可以將輸入內容 通常通過命令列管道傳遞 轉成後續命令的引數,通常用途有 命令組合 尤其是一些命令不支援管道輸入,比如ls。避免引數過長 xargs可以通過 nx來將引數分組,避免引數過長。使用語法如下 usage xargs option command initial args.run ...

linux命令詳解 xargs

1.簡介 之所以能用到這個命令,關鍵是由於很多命令不支援 管道來傳遞引數,而日常工作中有有這個必要,所以就有了 xargs 命令,例如 find sbin perm 700 ls l 這個命令是錯誤的 find sbin perm 700 xargs ls l 這樣才是正確的 xargs 可以讀入 ...

Linux命令之xargs命令詳解

xargs是乙個非常強大的命令,可以取乙個命令的輸出作為另乙個命令的引數。下面就是幾個關於如何有效使用xargs命令的例項 1.當你使用rm命令去刪除很多的檔案時,你可能會得到錯誤資訊 bin rm argument list too long linux 這時可以用xargs來避免這個問題 fin...