我需要将此字符串添加到文件include /etc/nginx/sites-enabled/*.conf
内nginx.conf
。它应该看起来像这样:
. . .
. . .
http {
. . .
. . .
include /etc/nginx/conf.d/*.conf;
# INCLUDE STRING HERE VIA COMMAND
}
我想编写一些脚本,但是我卡在这一步,不知道哪个命令可以为我完成这项工作。
答案1
您可以在特定的后面附加图案和sed
。
使用语法/pattern/ a <string>
:
sed '/include.*conf/ a "New string"'
就像这样:
echo "http {
. . .
. . .
include /etc/nginx/conf.d/*.conf;
}" | sed '/include.*conf/ a "New string"'
http {
. . .
. . .
include /etc/nginx/conf.d/*.conf;
"New string"
}
如果您想附加到特定的位置位置,使用(例如):
echo "http {
. . .
. . .
}" | sed '4 a\
include /etc/nginx/sites-enabled/*.conf'
http {
. . .
. . .
include /etc/nginx/sites-enabled/*.conf
}
...附加到第四行之后。
sed
版本:
sed (GNU sed) 4.4