小编Mik*_*zco的帖子

sed - 为什么这不起作用?

我只是想使用 bash 脚本替换 php.ini 文件中的设置。

这是我的情况:

我有一个非常具体的设置,默认设置是:

;date.timezone =
Run Code Online (Sandbox Code Playgroud)

现在,我正在尝试将其替换sed为:

date.timezone = "America/Mexico_City"
Run Code Online (Sandbox Code Playgroud)

我尝试使用的命令是:

sed -i '/^;date\.timezone[[:space:]]=.*$/date.timezone = "America/Mexico_City"' php.ini
Run Code Online (Sandbox Code Playgroud)

但我明白了:

sed: -e expression #1, char 35: extra characters after command
Run Code Online (Sandbox Code Playgroud)

我真的不知道为什么,但如果我只留下一个字符,它就可以工作(不是预期的方式,但不会返回错误)。例子:

sed -i '/^;date\.timezone[[:space:]]=.*$/d' php.ini
Run Code Online (Sandbox Code Playgroud)

这只是删除了该行 ;date.timezone =

我对 sed 真的很陌生,我真的很感激任何帮助。

谢谢

sed

1
推荐指数
1
解决办法
1367
查看次数

标签 统计

sed ×1