sed:高效的批量替换文件内容的命令

今天项目的base.js文件需要重构一下,因为里面有很多多余的代码,并且结构存在很多不合理的地方。
因为项目不支持es6模块化,所以只能使用传统的方法。首先声明一个顶级变量,挂在window对象下,然后所有的变量和方法都挂在到这个顶级变量上。

;(function (window, document, $) {
    ...
}(window, document, jQuery));

然后逐步的把变量和方法挂载到这个顶级变量上。
doing**************************
接着遇到一个问题,base文件中的函数或者全局变量在项目的多个文件中使用。开始我挨个文件的该函数,改了两个函数我受不鸟了。
这里写图片描述
这里写图片描述
随便两个函数,都要改这么多文件,如果挨个改,那还不加班到死。好在我半路醒悟了,不管是iDE还是命令行都有方法对文件进行批量处理的。为了提高效率(装遁–>装逼之术),依然决然的使用命令行,感谢万能的linux;
首先了解一下grep命令
grep “查询内容” [目录|文件] -Rn
就能搜索出你想要的内容,例如:
这里写图片描述
然后就是sed命令,替换字符串就是靠它的
常用的两条命令,单文件替换:
sed -i “s/oldString/newString/g” [文件名]
多文件批量替换:
sed -i “s/oldString/newString/g” ·grep “oldString” -rl [目录]·
注意:如果你想替换函数名包含(),不需要使用‘\’,直接使用()就可以了。例如:
这里写图片描述
当然无法使用命令行时,可以使用IDE进行,一般IDE都有文件内容替换功能。

猜你喜欢

转载自blog.csdn.net/babulongbo/article/details/81347006
今日推荐