xargs命令把從stdin接受到的數據從新格式化。例如:安全
$command | xargs程序
xargs命令能夠將多行輸入轉換成單行輸出command
$cat example.txt方法
1 2 3 4 5 6統計
7 8 9 10數據
11 12刪除文件
$cat example.txt | xargsdi
1 2 3 4 5 6 7 8 9 10 11 12文件
xargs也能夠分紅多行輸出,每行輸出n個。如:co
$cat example.txt | xargs –n 3
1 2 3
4 5 6
7 8 9
10 11 12
xargs能夠讀取stdin,而後將格式化參數傳遞給命令,如:
$cat example.txt | xargs –n 7 echo
1 2 3 4 5 6 7
8 9 10 11 12
同時能夠結合find使用xargs,如:
$ find . –type f –name 「*.txt」 –print | xargs rm –f
以上刪除文件的作法比較危險,不少文件均可能會包含空格符,而xargs極可能會誤認爲它們是定界符,一下是較安全的方法:
$ find . –type f –name 「*.txt」 –print0 | xargs -0 rm –f
xargs -0將\0做爲輸入定界符。
如下是xargs更強大的一個應用,好比統計全部c程序文件的行數:
$ find . –type f –name 「*.c」 –print0 | xargs -0 wc -l