xargs命令

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

相關文章
相關標籤/搜索