功能说明
xargs用于Linux下命令参数的传递
管道符( | )作用为将前一命令的stdout作为后一命令的stdin
xargs与之有别, 将前一命令的stdout作为后一命令的参数
示例
[root@server ~]# echo --help | cat
--help
[root@server ~]# echo --help | xargs cat
Usage: cat [OPTION]... [FILE]...
Concatenate FILE(s), or standard input, to standard output.
-A, --show-all equivalent to -vET
-b, --number-nonblank number nonempty output lines, overrides -n
-e equivalent to -vE
-E, --show-ends display $ at end of each line
...以下省略...
xargs的常用参数
不加参数的xargs命令会将前一命令的stdout一次传至后一命令的参数中
-n *num*
一次传*num*个参数, 其实-n *num*是--max-args=*num*的缩写, 表示一次最多*num*个参数传入
-0
参数间的分隔是空(null)字符而不是空格, 是--null的缩写, 该参数常与find命令的-print0参数联用
-I *replace-str*
用于将参数至于指定位置, 示例: cat xargs-paras | xargs -I [] touch []
补充说明
xargs后面接的命令, 不可以是shell builtins(内建命令)