[英]Replacing strings with sed in ubuntu
I have a config file with such value: 我有一个具有这样的值的配置文件:
SITE_URL=http://domain.com
So I am trying to replace it with something like development.local.dev with sed, but not sure how to escape the domain correctly. 所以我试图用sed将其替换为诸如development.local.dev之类的东西,但不确定如何正确地转义域。 Tried a lot of something like this:
尝试了很多这样的事情:
sed -i -e 's/SITE_URL=http://domain\.com/SITE_URL=development.local.dev/g' .env
But keep getting: sed: -e expression #1, char 19: unknown option to `s' 但是请继续获取:sed:-e表达式#1,字符19:`s'的未知选项
It is because /
is used a regex delimiter and it is used in your search pattern as well. 这是因为
/
用于正则表达式定界符,并且也在搜索模式中使用。
You can use an alternate delimiter eg ~
in sed
: 您可以使用备用分隔符如
~
在sed
:
sed '/^SITE_URL=/s~http://domain\.com~development.local.dev~' file
SITE_URL=development.local.dev
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.