标签:print 命令 自己 type cat 过滤器 不用 内容 exec
今天开始总结下学到过的命令,主要自己学习使用。今天先总结下xargsxargs 向其他命令传递命令行参数的过滤器。
选项
-n 指定每行多少列
-i 以{}代替前面的内容
-d 指定分隔符
-0 配合find的-print0 来处理名称带空格的文件
用法示例:
1 -n 用法
[root@mail tmp]# cat sed.txt
stu1
123
stu2
222
[root@mail tmp]# xargs <sed.txt
stu1 123 stu2 222
[root@mail tmp]# xargs -n2<sed.txt
stu1 123
stu2 222
[root@mail tmp]# echo stu{1..3}|xargs -n1
stu1
stu2
stu3
2 -i 用法
查找文件并复制到/tmp
[root@mail tmp]# find /etc -type f -name "passwd" |xargs -i cp {} /tmp
3 -d用法
[root@mail tmp]# echo aaaxdddxccc|xargs -d x -n1
aaa
ddd
ccc
4 -0(零)用法
[root@mail tmp]# touch "a b.txt"
[root@mail tmp]# find -name ".sss" -print0|xargs -0 ls -l
-rw-r--r-- 1 root root 0 Jun 20 09:19 ./a b.sss
因为名称带有空格,所有用xargs只能用此法处理,如果用-exec则不用,示例如下:
[root@mail tmp]# find -name ".sss" -exec ls -l {} \;
-rw-r--r-- 1 root root 0 Jun 20 09:19 ./a b.sss
标签:print 命令 自己 type cat 过滤器 不用 内容 exec
原文地址:http://blog.51cto.com/shaiyawu/2130794