我想通过脚本添加zsh-autosuggestions
插件。~/.zshrc
原文:
plugins=(git)
或者
plugins=(git
some1
some2)
目标 :
plugins=(git
zsh-autosuggestions)
这行不通。
sed -i 's/^plugins=\(([^\)]*)\)/plugins=\(\1\nzsh-autosuggestions\n\)/' ~/.zshrc
我很困惑,我认为这
([^\)]*)
是第 1 组,但为什么它不起作用但删除第一组
()
sed -i 's/^plugins=\([^\)]*\)/plugins=\(\1\nzsh-autosuggestions\n\)/' ~/.zshrc
结果是
plugins=((git zsh-autosuggestions ) )
我已经逃脱了
()
by\
,为什么它变成了第 1 组?
Sed
解决方案:样本
~/.zshrc
内容:N
- 将换行符添加到模式空间,然后将下一行输入附加到模式空间\(...\)
- 正则表达式捕获组;应\
在BRE中转义以启用其特殊含义输出:
下面的命令对我来说很好
命令
输出