【问题标题】:Changing contents of a file through shell script with special symbols通过带有特殊符号的 shell 脚本更改文件的内容
【发布时间】:2017-05-15 15:25:58
【问题描述】:

我有文件,它的内容是使用 shell 脚本

 define("SVC_OS_URL", "http://abc.bbc.com:9090");

我想修改如下

define("SVC_OS_URL", "http://bbc.uuu.com:8989"); 

这是我的shell脚本代码

SVC_OS_URL="bbc.uuu.com:8989" sed -i -e "s/(SVC_OS_URL\", \"http://=)/$SVC_OS_URL\"/" config.php

但是这个命令不起作用 有什么建议吗?

【问题讨论】:

    标签: bash shell sed


    【解决方案1】:

    使用备用正则表达式分隔符并修复您的正则表达式模式:

    sed -i -E "s~(SVC_OS_URL\", \"http://).*~\1$SVC_OS_URL\");~" config.php
    

    这将给出:

    define("SVC_OS_URL", "http://bbc.uuu.com:8989");
    

    【讨论】:

    • 我怎样才能把这个 改成
    • 也可以用同样的方法。只需使用~ 作为正则表达式分隔符。
    猜你喜欢
    • 1970-01-01
    • 2020-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-07
    • 2013-05-27
    • 1970-01-01
    相关资源
    最近更新 更多