[Linux] xargs】的更多相关文章

xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具.它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理.通常情况下,xargs从管道或者stdin中读取数据,但是它也能够从文件的输出中读取数据.xargs的默认命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行和空白将被空格取代. 1. 当你尝试用rm 删除太多的文件,你可能得到一个错误信息:/bin/rm Argument list too long. 用xarg…
xargs xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具. xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据. xargs 也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行. xargs 默认的命令是 echo,这意味着通过管道传递给 xargs 的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代. xargs 是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命…
今天刚好遇到需要使用xargs的情况,就来研究一下xargs 和 管道符的区别 举几个例子,下面两个语句执行后的结果是什么呢? 1. zhang$ find . -name "*.properties" | more --将当前目录下以properties结尾的文件名及路径给more,出来的是文件列表的名称 2. zhang$ find . -name "*.properties" | xargs more --将当前目录下以properties结尾的文件给more…
xargs 命令可以将一个命令的输出,作为另一个命令的输入! 这里听来好像是管道的功能,之所以有xargs是因为有的命令不知吃管道,这时xargs就派上用场了! 具体的方法是:前一个命令的输出会使用空格进行隔开,得到多个参数,作为后面的命令的输入.…
200 ? "200px" : this.width)!important;} --> 介绍 我们可以利用管道将一个命令的“标准输出”作为另一个命令的“标准输入”:但是这里的标准输出都是数据流,但是某些命令的输入只接收参数命令不接收数据流,那么这种一般的方法就无法实现,这里就需要借助xargs命令.xargs可以将数据流转换成命令参数作为标准输入的参数,接下来就来详细了解xargs的用法. 多行转换 [root@localhost test]# cat test 在当前的test…
起因在对一堆*.tar.gz文件解压缩时,发现tar xvfz *.tar.gz不管用,一查,原来是tar xvfz *.tar.gz会被shell给拆成tar xvfz a.tar.gz b.tar.gz c.tar.gz,而在a.tar.gz中不存在b.tar.gz,当然会报错. 解决方法是使用脚本,写法很多,其中一种是:  for i in $(ls *.tar);do tar xvf $i;done或:for tar in *.tar.gz; do tar tvfz $tar;done…
xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具.它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理.通常情况下,xargs从管道或者stdin中读取数据,但是它也能够从文件的输出中读取数据.xargs的默认命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行和空白将被空格取代. 想查所有日志中包含”error“的日志并打印, 显然:find -name "*.log"| grep "error…
xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具.它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理.通常情况下,xargs从管道或者stdin中读取数据,但是它也能够从文件的输出中读取数据.xargs的默认命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行和空白将被空格取代. xargs 是一个强有力的命令,它能够捕获一个命令的输出,然后传递给另外一个命令,下面是一些如何有效使用xargs 的实用例子. 1.…
xargs是一条Unix和类Unix操作系统的常用命令.它的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题[1]. 例如,下面的命令: rm `find /path -type f` 如果path目录下文件过多就会因为“参数列表过长”而报错无法执行.但改用xargs以后,问题即获解决. find /path -type f -print0 | xargs -0 rm 本例中xargs将find产生的长串文件列表拆散成多个子串,然后对每个子串调用rm.-print0表示输出…
-i -I 参数区别 http://man.linuxde.net/xargs 它们都是用来作参数扩展替换的,以下两句代码其实效果一样 cat arg.txt|xargs -i sh sk.sh -p {} -j cat arg.txt|xargs -I {} sh sk.sh -p {} -j  加-i 参数直接用 {}就能代替管道之前的标准输出的内容: 加 -I 参数 需要事先指定替换字符 其它链接: xargs命令详解,xargs与管道的区别…