xargs命令
xargs命令把从stdin接受到的数据重新格式化。
大多数 Linux 命令都会产生输出:文件列表、字符串列表等。但如果要使用其他某个命令并将前一个命令的输出作为参数该怎么办
例如:
格式:$command | xargs
xargs命令可以将多行输入转换成单行输出
$cat example.txt
1 2 3 4 5 6
7 8 9 10
11 12
$cat example.txt | xargs
1 2 3 4 5 6 7 8 9 10 11 12
xargs也可以分成多行输出,每行输出n个。如:
$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将