Linux/Mac下批量替换文件中的字符串
来源:互联网 发布:网络监控代理 编辑:程序博客网 时间:2024/05/19 01:07
在百度里面搜了,绝大多数文章都是转载的其他网站的,连错字都没有改就发布了,而且本身还是个错的。
下面是我google到的,
grep -rl "str1" dir | xargs sed -i 's/str2/str3/g'
意思就是把dir路径下面,还有子文件夹里面的所有包含‘str1’的文件里的‘str2’替换为‘str3’
当str1和str2相同时,就是批量查找和替换了
另外
grep -rl "str1" dir就是显示dir下所有包含str1字符串文件的路径
但是有时候上面提到的语句并不好用,因为第一个必须要把双引号全部转义,第二个填充字符串的地方必须把斜杠全部转义,有时候如果要替换html标签会很麻烦,所以这里再提供另外一种方法
rpl命令,需要安装rpl
sudo apt-get rplrpl "str1" "str2" ./*
就会将当前目录下所有文件中str1替换为str2,只需要把双引号转义就行,很方便
Mac用户需要注意, OS X上的sed和类似ubuntu这种linux上的sed是不同的, 要求在sed -i后面跟一个字符串, 用来备份. 如果留空就不备份, 所以可以写成下面这样
grep -rl "str1" dir | xargs sed -i "" 's/str2/str3/g'
0 0
- Linux/Mac下批量替换文件中的字符串
- linux sed 批量替换文件中的字符串
- Linux批量替换多文件中的字符串
- linux下批量替换文件中的字段
- linux/mac批量替换文件中的^M换行符
- Linux下批量替换多个文件中的字符串的简单方法
- linux下用shell、sed批量替换多个文件中的字符串
- linux sed 批量替换文本多个文件中的字符串
- linux sed 批量替换多个文件中的字符串
- linux sed 批量替换多个文件中的字符串
- linux sed 批量替换多个文件中的字符串
- linux -- 批量替换多个文件中的某个字符串
- linux sed 批量替换多个文件中的字符串
- linux sed 批量替换多个文件中的字符串
- linux 批量替换多个文件中的字符串
- linux sed 批量替换多个文件中的字符串
- linux sed 批量替换多个文件中的字符串
- Linux命令行批量替换多文件中的字符串【转】
- 【LeetCode】Reverse Words in a String
- 2014年有哪些事情不值得你为之操心
- Vitamio中文API文档(1)
- linux下intel 82579LM 网卡驱动安装
- 【setSVMDetector+新模型】利用Hog特征和SVM分类器进行行人检测
- Linux/Mac下批量替换文件中的字符串
- 测试代码段的执行时间(精确到NSTimeInterval级别)
- 今天开了一个博客,开始写我的自学笔记了!
- 在android中使用lua脚本
- maven安装
- AndroLua, Luajava初步探究
- 在android中嵌入脚本语言综述
- 今天发布第一个android应用了
- 古典音乐赏析笔记