我有一个大型项目,我想使用以下命令替换模块名称:
查找 app/-type f -exec sed -i '' 's/Foo/Bar/g' {} +
这很好用,但 sed 还会在所有文件的末尾添加换行符(即使它找不到任何要替换的 Foo)。
如何防止 sed 添加这些换行符?
我在 OSX 上,使用 BSD 版本的 sed。
(郑重声明,我非常同意这里的 sed,但我不想污染项目的 git 历史。)
最佳答案
Perl 来拯救:
perl -i -pe 's/Foo/Bar/g'
Perl 不添加换行符。
关于git - 防止 sed 在文件末尾添加换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38354725/