【问题标题】:Recursive Bulk Edit in LinuxLinux 中的递归批量编辑
【发布时间】:2009-05-30 23:24:08
【问题描述】:

我正在尝试更改多个文件中的某些行(分散在子文件夹中),而不必逐个编辑每个文件。我是查斯给的。以下

perl -pi.bak -e 's{[^/]Css/Template.css}{/Css/Template.css}' *

它就像一个魅力,但想知道这个命令或类似的命令是否可以一次递归地完成

【问题讨论】:

    标签: linux recursion editor bulk


    【解决方案1】:
    find . -type f -exec perl -pi.bak -e 's{[^/]Css/Template.css}{/Css/Template.css}' '{}' '+'
    

    这会将它应用于当前目录和所有子目录中的所有文件。它不会遵循符号链接。您可能还想使用 -name 指令缩小查找范围。

    【讨论】:

    • 谢谢,它有效!我认为添加 -r 会递归地做到这一点,呵呵。现在是时候删除那些 bak 文件了...
    • 您也可以再次使用 find 轻松删除那些 .bak 文件 :)
    • 拍脑袋好尴尬……别看了
    猜你喜欢
    • 2012-07-12
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 2010-10-28
    • 2017-08-10
    • 1970-01-01
    • 2015-07-15
    • 1970-01-01
    相关资源
    最近更新 更多