我正在尝试编写一个脚本来自动安装openvpn。我要做的最后一件事是将配置文件插入自动启动。我已经尝试过使用sed来搜索一行之前我想要插入新的但是它似乎没有工作,我认为由于命令中的引号。
做我所拥有的是:
#AUTOSTART="all"
#AUTOSTART="none"
#AUTOSTART="home office”
然后我运行我的sed命令:
sed -i 's/home office"/home office"\n AUTORUN="Netherlands"/' openvpn
我环顾四周,试图逃避我的双引号,看看是不是问题,但这并没有成功。
我的最终目标是:
#AUTOSTART="all"
#AUTOSTART="none"
#AUTOSTART="home office”
AUTOSTART=“Netherlands”
答案 0 :(得分:3)
你不需要替换任何东西。 sed
可以在所需的行之后添加文字。
sed -i '/home office/a\
AUTOSTART="Netherlands"\
' openvpn
答案 1 :(得分:0)
你可以这样做:
$ sed 's/"home office"/&\nAUTOSTART="Netherlands"/' file.txt
#AUTOSTART="all"
#AUTOSTART="none"
#AUTOSTART="home office"
AUTOSTART="Netherlands"
我认为你的意思是"
而不是”
。
如果您的意思是”
:
$ sed 's/"home office”/&\nAUTOSTART=”Netherlands”/' file.txt
#AUTOSTART="all"
#AUTOSTART="none"
#AUTOSTART="home office”
AUTOSTART=”Netherlands”