通过sed更新参数问题
Updating paramenter issue via sed
在我的 bash 脚本中。我有如下
HOST_IP=`hostname -I`
sed -i -e "/dirParam\.dprop_web_service_host=/ s/=.*/=http://$HOST_IP:9001/datasources/$INSTANCE" -e "s/\r$//" $SCB_ORDM/dir.properties
之前:
directorParam.dprop_web_service_host=http://localhost:9001
同时执行上面的脚本。我收到错误消息
sed: -e expression #1, char 50: unknown option to `s'
我期待:
directorParam.dprop_web_service_host=http://10.10.405.30:9001
s
(替代命令)后的下一个字符是/
,所以它是定界符,必须在模式中转义并替换字符串
sed -i -e "/dirParam\.dprop_web_service_host=/ s/=.*/=http:\/\/$HOST_IP:9001\/datasources\/$INSTANCE/" -e "s/\r$//" $SCB_ORDM/dir.properties
否则可以使用另一个分隔符
sed -i -e "/dirParam\.dprop_web_service_host=/ s@=.*@=http://$HOST_IP:9001/datasources/$INSTANCE@" -e "s/\r$//" $SCB_ORDM/dir.properties
在我的 bash 脚本中。我有如下
HOST_IP=`hostname -I`
sed -i -e "/dirParam\.dprop_web_service_host=/ s/=.*/=http://$HOST_IP:9001/datasources/$INSTANCE" -e "s/\r$//" $SCB_ORDM/dir.properties
之前: directorParam.dprop_web_service_host=http://localhost:9001
同时执行上面的脚本。我收到错误消息
sed: -e expression #1, char 50: unknown option to `s'
我期待: directorParam.dprop_web_service_host=http://10.10.405.30:9001
s
(替代命令)后的下一个字符是/
,所以它是定界符,必须在模式中转义并替换字符串
sed -i -e "/dirParam\.dprop_web_service_host=/ s/=.*/=http:\/\/$HOST_IP:9001\/datasources\/$INSTANCE/" -e "s/\r$//" $SCB_ORDM/dir.properties
否则可以使用另一个分隔符
sed -i -e "/dirParam\.dprop_web_service_host=/ s@=.*@=http://$HOST_IP:9001/datasources/$INSTANCE@" -e "s/\r$//" $SCB_ORDM/dir.properties