xargs 一般是和管道一起使用.
xargs(英文全拼: eXtended ARGuments)是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。xargs 是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命令。
由于很多命令不支持|管道符号来传递参数,而日常工作中又有这个必要,所以就有了 xargs 命令,例如
find /sbin -perm +700 |ls -l #这个命令是错误的
find /sbin -perm +700 |xargs ls -l #这样才是正确的
基础使用:
[root@hostserver data]# ls |xargs -n1
backup
ceph
images
install
rpm
sql
temp
[root@hostserver data]# ls |xargs -n2
backup ceph
images install
rpm sql
temp
You have new mail in /var/spool/mail/root
[root@hostserver data]# ls |xargs -n 3
backup ceph images
install rpm sql
temp
经常用指令:
ls|xargs -n1 -I {} cp {} temp/
ls|xargs -n1 -i {} cp {} temp/
上面指令,分成两段来看:
xargs -n1 -I {} #代表1行1列输出赋值给{},
cp {} temp/ #执行cp 命令
网友评论