shell中的xargs命令

来源:互联网 发布:取色笔 淘宝 编辑:程序博客网 时间:2024/04/28 01:42

xargs命令的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题

例如:

在家目录下新建一tmp文件,然后查看其内容时两者的区别

immrwk@immrwk-pc:~$ cat tmp1 2 34 5 67 8 9 
immrwk@immrwk-pc:~$ cat tmp|xargs 1 2 3 4 5 6 7 8 9  

加入 -n 传参可将其多行输出

immrwk@immrwk-pc:~$ cat tmp|xargs -n 1123456789

删除某个字符来做分隔

immrwk@immrwk-pc:~$ cat tmp|xargs -d 5 1 2 3 4  67 8 9

与find命令结合使用

immrwk@immrwk-pc:~/tmp$ ls1.c  1.java  2.c  2.java  3.c  3.javaimmrwk@immrwk-pc:~/tmp$ find -name '*.c'|xargs rm immrwk@immrwk-pc:~/tmp$ ls1.java  2.java  3.java

统计当前目录及其子目录下的java文件有多少行,并按行数降序排列(只是统计出了该文件一共多少行,无法对空行注释行有效行进行分类)

find -name '*.java' -print0|xargs -0 wc -l|sort -nr

结果如下图所示:

xargs查代码行数示例图片

找到哪个文件中有所要想找的内容

find *.java -type f -print|xargs grep "内容"
1 0
原创粉丝点击