如何将文本插入conf文件?
在 nginx.conf
中,我有:
server {
listen 81;
...snip...
}
我希望文件看起来像这样:
server {
listen 81;
if (-f $document_root/system/maintenance.html) {
return 503;
}
...snip...
}
因此,只有文本 (if..
) 尚不存在时才应插入。
这可以在命令行中使用一些内置程序吗?
例如:
- 打开一个文件,
- 查看其中是否包含特定文本,
- 如果没有,则找到特定文本(
listen 81;
),并在插入几行文本后的下一行
In nginx.conf
I have:
server {
listen 81;
...snip...
}
I want the file to look like this:
server {
listen 81;
if (-f $document_root/system/maintenance.html) {
return 503;
}
...snip...
}
So the text (if..
) should only be inserted if it does not already exist.
Is this possible to do using some in-built program at the command line?
Something like:
- Open a file
- See if it has certain text in it
- If it does not then locate certain text (
listen 81;
) and on the next line after it insert a few lines of text
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是
sed
的工作,已包装在 shell 脚本中。完全未经测试;调用为“./script /path/to/nginx.conf”;请注意,它不会查找您想要添加的完整文本,而只会查找第一行中希望足够长的标记。This is a job for
sed
, wrapped up in a shell script. Completely untested; invoke as "./script /path/to/nginx.conf"; note that it does not look for the complete text you wanted to add, only a hopefully-sufficiently-long token from its first line.