查看“Xargs入门”的源代码
←
Xargs入门
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
大多数 Linux 命令都会产生输出:文件列表、字符串列表等。但如果要使用其他某个命令并将前一个命令的输出作为参数该怎么办?例如,file 命令显示文件类型(可执行文件、ascii 文本等);你能处理输出,使其仅显示文件名,目前你希望将这些名称传递给 ls -l 命令以查看时间戳记。xargs 命令就是用来完成此项工作的。他允许你对输出执行其他某些命令。 == 什么是i== 今天遇到 i 参数 终于明白什么意思了 -i, --replace[=R] replace R in INITIAL-ARGS with names read from standard input; if R is unspecified, assume {} 使用-i参数默认的前面输出用{}代替,-I参数可以指定其他代替字符,如例子中的[] == 举例 == <pre> #xargs rm #按时间排序,删除最后的10个文件 ls -t | tail -10 | xargs rm -rf 使用xargs执行mv ##批量mv [root@server pc]# find . -type f -mtime +10 | grep txt ./3.txt ./1.txt ./2.txt [root@dkm-server pcntl]# find . -type f -mtime +10 | grep txt | xargs -i mv {} /data/ [root@dkm-server pcntl]# ls /data/ 1 1.txt 2.txt 3.txt a #也可实现批量改名 find . -type f -mtime +10 | grep txt | xargs -i mv {} {}bak [root@localhost jacky]# pwd /home/test/tmp/jacky [root@localhost jacky]# ls file1 file2 file3 [root@localhost jacky]# ls .. jacky [root@localhost jacky]# find . -name "file*" | xargs -i mv {} .. [root@localhost jacky]# ls [root@localhost jacky]# ls .. file1 file2 file3 jacky [root@localhost jacky]# = find后执行xargs提示xargs: argument line too long解决方法: find . -type f -atime +20 -print0 | xargs -0 -l1 -t rm -f -l1是一次处理一个 -t是处理之前打印出命令 </pre> ==其它== <pre>find /data/ -type f -mtime +10 |grep 1."*" |xargs -i cp {} {}.bakk find /path -type f -exec rm '{}' \; $ ls | xargs -t -i mv {} {}.bak -i 选项告诉 xargs 用每项的名称替换 {}。-t 选项指示 xargs 先打印命令,然后再执行。 cat arg.txt aaa bbb ccc aaa bbb ccc xargs的一个选项-I,使用-I指定一个替换字符串{},这个字符串在xargs扩展时会被替换掉,当-I与xargs结合使用,每一个参数命令都会被执行一次: cat arg.txt | xargs -I {} ./sk.sh -p {} -l -p aaa -l -p bbb -l -p ccc -l -p aaa -l -p bbb -l -p ccc -l -d选项可以自定义一个定界符: echo "nameXnameXnameXname" | xargs -dX name name name name </pre> ==参考 == [https://zh.wikipedia.org/zh-hans/Xargs xargs] find 命令-exec,xargs用法的一点总结 http://liuleideshitou.blog.51cto.com/2062845/719810 http://man.linuxde.net/xargs Linux下xargs命令详解 http://blog.csdn.net/andy572633/article/details/7214534 每天一个linux命令(21):find命令之xargs http://www.cnblogs.com/peida/archive/2012/11/15/2770888.html [https://www.codeleading.com/article/24102792320/ linux shell ls xargs rm 组合删除文件 ] [https://blog.csdn.net/whatday/article/details/104027935 linux shell ls xargs rm 组合删除文件] [[category:shell]]
返回至
Xargs入门
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
我的导航
关于我
shell
python
ops
linuxchina.net
blog.linuxchina
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息