xargs -i 和-I 的区别【转】
xargs与find经常结合来进行文件操作,平时删日志的时候只是习惯的去删除,比如
# find . -type f -name "*.log" | xargs rm -rf *
就将以log结尾的文件删除了,如果我想去移动或者复制就需要使用参数来代替了。
xargs -i 参数或者-I参数配合{}即可进行文件的操作。
-I replace-str
Replace occurrences of replace-str in the initial-arguments with names read from standard input. Also, unquoted blanks do not terminate
input items; instead the separator is the newline character. Implies -x and -L 1.
--replace[=replace-str], -i[replace-str]
This option is a synonym for -Ireplace-str if replace-str is specified, and for -I{} otherwise. This option is deprecated; use -I instead.
Replace occurrences of replace-str in the initial-arguments with names read from standard input. Also, unquoted blanks do not terminate
input items; instead the separator is the newline character. Implies -x and -L 1.
--replace[=replace-str], -i[replace-str]
This option is a synonym for -Ireplace-str if replace-str is specified, and for -I{} otherwise. This option is deprecated; use -I instead.
man了一下看的还是不太懂,通过例子,做作实验将我的理解写一下。
############### 操作的目录下的文件############### [root@test05 ab]# ls 1kk.zip 3kk.zip 5kk.zip b.rar d.rar f.rar h.rar j.rar mini.txt ni.txt 2kk.zip 4kk.zip a.rar c.rar e.rar g.rar i.rar k.rar nii.txt ###################使用 i 参数 ################## [root@test05 ab]# find . -type f -name "*.txt" | xargs -i cp {} /tmp/k/ [root@test05 ab]# ls ../k/ mini.txt nii.txt ni.txt [root@test05 ab]# ################### 使用 I 参数 ################ [root@test05 ab]# find . -type f -name "*.txt" | xargs -I {} cp {} /tmp/n/ [root@test05 ab]# ls ../n/ mini.txt nii.txt ni.txt
结果出来了,
加-i 参数直接用 {}就能代替管道之前的标准输出的内容;
加 -I 参数 需要事先指定替换字符
转自
xargs的i参数 - luojiafei的专栏 - CSDN博客
http://blog.csdn.net/luojiafei/article/details/7213489
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?