我正在尝试删除 PHP 文件中的某些行。我尝试使用 find、exec 组合:
find . -name '*.php' -exec sed '/@category/d' {} \;
但它只打印出文件内容。语法有什么问题吗?或者是什么问题?
你可以试试这个命令:
find . -name '*.php' -exec sed -i '/@category/d' {} \;
我想你错过了 -i 选项
它有效,但可能不是您所期望的。
find . -name '*.php' -exec sed -i '/@category/d' {} \;
将杀死有问题的线条。
这应该是 sed 的命令,所以尝试添加 -i :
sed -i ".bak" '/culpa/d' test.txt
find . -name '*.php' -exec sed -i '/@category/d' {} \;
答案来源: Bash - 在文件中查找关键字并删除其行