如何同时修改大量html文件?

如何同时修改大量html文件?,html,css,fedora20,Html,Css,Fedora20,我想在Fedora系统上同时修改数千个HTML文件。 将style.css替换为。/headers.css,并替换另一个长链,您可以在这里看到:我建议使用类似sed的工具,它可以对文件进行文本/正则表达式替换 将其与find和xargs相结合,是使其能够处理大量文件的良好开端 例如,你可以这样做 find-name“*.html”-print0 | xargs-0 sed-i的#style.css#../headers.css#g' 由于无法撤消此操作,我建议备份文件以防万一(或使用版本控制!)

我想在Fedora系统上同时修改数千个HTML文件。
style.css
替换为
。/headers.css
,并替换另一个长链,您可以在这里看到:

我建议使用类似
sed
的工具,它可以对文件进行文本/正则表达式替换

将其与
find
xargs
相结合,是使其能够处理大量文件的良好开端

例如,你可以这样做

find-name“*.html”-print0 | xargs-0 sed-i的#style.css#../headers.css#g'

由于无法撤消此操作,我建议备份文件以防万一(或使用版本控制!)

编辑: 关于如何将其扩展到其他搜索/替换术语(如粘贴箱)的指南:

同样的想法。只要确保你能妥善逃离一切。作为一个可以让你更进一步的解释

  • find
    查找所有
    html
    文件
  • xargs
    在每个文件上执行命令后运行该命令
  • sed
    进行更换
  • -i
    告诉
    sed
    就地执行
  • s
    告诉它用
    Substitute
  • style.css
    是要替换的
  • 。/headers.css
    是替换它的内容
  • 并且
    g
    告诉它替换文件中的所有引用
对于您的长代码,您可以尝试以下方法:

find . -name "*.html" -exec sed -i 's#<a href="\.\./index.html">&laquo;</a> <h1>\(.*\)</h1>#<section class="skin-organic" role="region">\n  <header>\n    <a href="../index.html"><span class="icon icon-back">back</span></a>\n    <h1>\1</h1>\n  </header>\n</section>#g' {} \;
find-名称“*.html”-exec sed-i's#\(.*\)\n\n\n\1\n\n#g'{};

谢谢,但是pastebin上的代码怎么办?已编辑,其中包含有关如何操作的信息。如果您有问题,请随时跟进,但这应该足以让您找到答案。我尝试了您的代码,但它只删除了一些代码,没有显示我想要的。您确定您的示例正确吗?我的代码替换了
[任何内容]
查看以查看所有代码。