使用shell命令sed将指定目录下的所有文件中指定的字符串替换成指定的字符串

时间:2022-03-28 09:00:43

使用shell命令sed将指定目录下的所有文件中指定的字符串替换成指定的字符串。

在linux编程调试时,会加入大量的打印,但出包时不想要打印,因为打印会消耗系统的资源,作为发布版的包,没必要有打印。但有不想把打印的代码去掉,可能下次还要用到。那么我们可以用一下两条命令来进行注释和反注释操作,非常简单。


需要注意的是,这两个命令功能强大,不是很熟悉的话,建议将文件备份,否则后果你是懂的。

将当前目录及子目录文件中的"//printf" 替换成"printf"

[root@xsw shell]#sed -i "s/\/\/printf/printf/g" `grep /\/\printf -rl ./`


将当前目录及子目录文件中的"printf" 替换成"//printf"

[root@xsw shell]# sed -i "s/printf/\/\/printf/g" `grep printf -rl ./`


是不是很简单就完成了我们想要的结果。shell 还是相当强大的。