linux sed unknown option to 's',sed: -e expression #1, unknown option to `s‘解决办法
#!/bin/shurl=`cat datasource.properties|grep ^monitor.url|cut -d= -f2`echo $urluser=`cat datasource.properties|grep ^monitor.user|cut -d= -f2`echo $userpasd=`cat datasource.properties|grep ^monitor.pa
#!/bin/sh
url=`cat datasource.properties|grep ^monitor.url|cut -d= -f2`
echo $url
user=`cat datasource.properties|grep ^monitor.user|cut -d= -f2`
echo $user
pasd=`cat datasource.properties|grep ^monitor.pasd|cut -d: -f2`
echo $pasd
echo $1 $2 $3
sed -i "s/$url/$1/g" datasource.properties
sed -i "s/$user/$2/g" datasource.properties
sed -i "s/$pasd/$3/g" datasource.properties
报错如下:
sed: -e expression #1, char 13: unknown option to `s'
需要替换的行为:
monitor.url=http://192.168.25.100:8443/rest
查询资料得知,报错是因为替换的字符串包含有分隔符/
所以这行改一下分隔符就可以解决问题了
改成感叹号!或者| 或者, 等其他来分割
sed -i "s!$url!$1!g" datasource.properties
sed -i "s,$url,$1,g" datasource.properties
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)