我想在 nginx 文件的配置中添加额外的文本行。我写了一个正则表达式 HERE ,尽管它不适用于 sed。在找到的文本之后添加文本的脚本应该是什么样的?
我正在尝试使用这个命令,但没有成功:
sed '/location \/ {(\n|.)*?[a-zA-Z0-9 \n;#._\/=$,]*}/r nginxphp.txt' /etc/nginx/sites-available/default
这个问题中最重要的是应该如何看待 sed 语法中的正则表达式?
或者只是另一种在 debian 中注入(inject)一些行到文件的方法(在我的例子中) 我想在/etc/nginx/sites-available/default 中进行更改:
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules;
}
HERE SOME TEXT
最佳答案
使用 sed :
sed '/location \/ {/!b;:A;N;/}/!bA;r nginxphp.txt' /etc/nginx/sites-available/default
关于regex - 在 linux 中的正则表达式后将文本附加到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52580021/