Linux冷门却很重要的命令(八)---xargs

    xiaoxiao2026-04-07  7

    在上一篇文章(http://blog.csdn.net/zhoutimo/article/details/52035561)提到过,当执行命令完成后,想 把执行命令后的结果再次进行处理,引用了exec的命令,本篇文章将讲解一个类似的命令xargs。

    exec和xargs区别:

    exec   1.参数是一个一个传递的,传递一个参数执行一次   2.文件名有空格等特殊字符也能处理 xargs    1.一次将参数传给命令,可以使用-n控制参数个数   2.处理特殊文件名需要采用如下方式:   find . -name "*.txt" print0 |xargs -0 rm {} 

    总结:总体来说xargs命令对系统优化处理更好一些

    xargs命令有两个要点。第一,你必须列出目标文件。第二,你必须指定对每个文件需要执行的命令或脚本。

    实例:

    [root@10-9-62-247 mm]# cat /mm/ls.log  1 2 有一个位于/mm/目录下的ls.log文件,内容如上。

    [root@10-9-62-247 mm]# find /mm -name  ls.log |xargs head -n 1 1

    执行xargs后,相当于"head ls.log -n -1"(xargs相当于获取上一次执行结果得到的文件,再次进行处理)

    试想如果不加xargs是什么情况?

    [root@10-9-62-247 mm]# find /mm -name  ls.log |head -n 1(普通管道命令是执行上一次执行命令后得到的显示的结果) /mm/ls.log

    转载请注明原文地址: https://ju.6miu.com/read-1308577.html
    最新回复(0)