![sed:使用 § 作为分隔符时替换表达式中的错误选项](https://linux22.com/image/128720/sed%EF%BC%9A%E4%BD%BF%E7%94%A8%20%C2%A7%20%E4%BD%9C%E4%B8%BA%E5%88%86%E9%9A%94%E7%AC%A6%E6%97%B6%E6%9B%BF%E6%8D%A2%E8%A1%A8%E8%BE%BE%E5%BC%8F%E4%B8%AD%E7%9A%84%E9%94%99%E8%AF%AF%E9%80%89%E9%A1%B9.png)
我试图使用§
(0xA7) 作为 sed 命令的分隔符:
sed -i'' 's§error_log = /var/log/php-fpm.log§error_log = /proc/self/fd/2§' /etc/php5/php-fpm.conf
我得到:
sed: bad option in substitution expression
或(在不同的 Linux 系统上):
sed: -e expression #1, char 66: Unknown option to 's'
如果我将其更改为@
:
sed -i'' 's@error_log = /var/log/php-fpm.log@error_log = /proc/self/fd/2@' /etc/php5/php-fpm.conf
有用。
为什么?