批量修改文件中的内容、批量删除文件or目录

批量修改文件内容

方法一

find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'
# perl -pi -e 在Perl 命令中加上-e 选项,后跟一行代码,那它就会像运行一个普通的Perl 脚本那样运行该代码.

方法二

sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录`
sed -i "s/oldString/newString/g"  `grep oldString -rl /path`
# sed命令可以批量替换多个文件中的字符串
# 补充说明:
# sed -i "s/oldString/newString/g"  `grep oldString -rl /path`    对多个文件的处理可能不支持,需要用 xargs, 搞定。
# 变种如下:
grep  oldString -rl /path | xargs  sed -i "s/oldString/newString/g" 

方法三

grep "abc" * -R | awk -F: '{print $1}' | sort | uniq | xargs sed -i 's/abc/abcde/g' 

批量删除文件目录

find . -name "xxx.xx" -type f -exec rm {} \;
# 参数解释
# {}代表的是由find找到的内容,会被放置到{}中
# exec一直到 \; 为止,代表find额外动作的开始 -exec 到 \; 结束,在这中间的就是find指令的额外动作(rm ... ) 
# 因为 ; 在bash环境下是有特殊意义,用反斜杠 \ 转义 

参考:
https://blog.csdn.net/ubuntulover/article/details/7626436
https://www.cnblogs.com/my_captain/p/10083454.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值