我正在使用 bash 脚本以交互方式编辑我的主机文件。我需要在我的主机文件中插入一行。该行需要插入特定注释后的第一个空行。我插入的内容在一个变量中。
这是我尝试过的(之前设置了 $NEWLINE):
sed -i '# Insert New DNS / Virtualbox/$NEWLINE/g' /etc/hosts
我没有收到错误,但没有写入该行。有什么建议吗?
认为:
# Insert New DNS
Run Code Online (Sandbox Code Playgroud)
是您要在第一个空行后插入的行:
您可以通过以下命令实现此目的:
sed -i '/# Insert New DNS/,/^$/s/^$/'"$NEWLINE"'/' /etc/hosts
Run Code Online (Sandbox Code Playgroud)
以下将在文件中搜索行号(地址):
/# Insert New DNS/,/^$/
Run Code Online (Sandbox Code Playgroud)
以下将替换“空行”
s/^$/'"$NEWLINE"'/
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2674 次 |
最近记录: |