GreenJoson
V2EX  ›  问与答

如何批量修改 Linux 主机上的 Html 文件的字符串?

  •  
  •   GreenJoson · Feb 4, 2015 · 3487 views
    This topic created in 4141 days ago, the information mentioned may be changed or developed.

    linux上有一个网站,因为统计代码的问题,需要全部更改统计代码,有很多静态的Html文件,请问如何批量替换掉所有包括《统计代码》的.html文件~

    想把cnzz的统计换掉求方法文件数量估计上万以上~~

    19 replies    2015-02-05 16:13:20 +08:00
    mjVtb96d2bap2u3Z
        1
    mjVtb96d2bap2u3Z  
       Feb 4, 2015
    打包下载到win,用notepad++批量替换如何?
    mahone3297
        2
    mahone3297  
       Feb 4, 2015
    find ... awk...sed... ???我不太会。。。
    wzxjohn
        3
    wzxjohn  
       Feb 4, 2015
    @mahone3297 只用 sed 就夠了,這麼簡單的替換完全不需要 awk 。。。
    extreme
        4
    extreme  
       Feb 4, 2015
    用for循环,find,以及sed:
    for i in $(find 网站根目录 -name *.html)
    do
    sed -i "s/原内容/欲替换为的内容/g" ${i}
    done
    zealic
        5
    zealic  
       Feb 4, 2015
    sed/grep/python
    GreenJoson
        6
    GreenJoson  
    OP
       Feb 4, 2015
    @ali727 .....这得多坑啊。几万个html哦。。然后改完还要上传。。。。
    GreenJoson
        7
    GreenJoson  
    OP
       Feb 4, 2015
    @extreme 等下测试下是否能用。。这是脚本吗?还是啥~?
    extreme
        8
    extreme  
       Feb 4, 2015
    @GreenJoson 在Linux的终端上执行,用Bash Shell。
    em70
        9
    em70  
       Feb 4, 2015 via Android
    文件怎么制作的就怎样改咯,静态文件难道手工制作的吗
    vivisidea
        10
    vivisidea  
       Feb 4, 2015
    sed 可以的,仔细看下 sed 的 manual

    另外,很重要的一点,先做好备份再操作!!!
    GreenJoson
        11
    GreenJoson  
    OP
       Feb 4, 2015
    @vivisidea 嗯。谢谢。~~
    scenix
        12
    scenix  
       Feb 4, 2015
    图省事可以用楼上的sed方式,做之前备份一下。
    也可以用任何一种脚本语言。比如python,perl什么的,都有字符串替换函数的,可读性比sed好些。
    jiyee
        13
    jiyee  
       Feb 4, 2015
    man sed
    imn1
        14
    imn1  
       Feb 5, 2015
    才几万个不算多……
    xmi
        15
    xmi  
       Feb 5, 2015
    cnzz统计,不就一个页脚吗... 一个footer.html不就好了? 现在辛苦了吧
    hxsmq
        16
    hxsmq  
       Feb 5, 2015 via iPhone
    直接正则表达式...
    GreenJoson
        17
    GreenJoson  
    OP
       Feb 5, 2015
    @xmi ...是一个footer.html啊。但问题是生成的静态,而且还存在一些之前的老页面,重新生成不太符合逻辑~~唉,没办法~~
    GreenJoson
        18
    GreenJoson  
    OP
       Feb 5, 2015
    @hxsmq 我也知道正则表达式,关键是在linux服务器上,要是win的话,在远程桌面一个批量替换软件就可以解决了。。。
    GreenJoson
        19
    GreenJoson  
    OP
       Feb 5, 2015
    @scenix 能不能给个python 解决一下,我不会Python..

    我想用php,但感觉Php解决好蛋疼一样~~

    求一个python脚本吧~~

    需求:

    可以自定义目录,可以自定义要查找的文件后缀,支持字符串查找替换。能批量就行了。~~~
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2919 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 70ms · UTC 05:34 · PVG 13:34 · LAX 22:34 · JFK 01:34
    ♥ Do have faith in what you're doing.