好吧我想我需要做以下事情:
在以下位置搜索以下代码/var/lib/asterisk/bin/retrieve_conf:
$engineinfo = engine_getinfo();
Run Code Online (Sandbox Code Playgroud)
紧接着这两行插入:
$engineinfo['engine']="asterisk";
$engineinfo['version']="1.6.2.11";
Run Code Online (Sandbox Code Playgroud)
提前谢谢,乔
你可以这样做
sed -ne '/$engineinfo = engine_getinfo();/a\'$'\n''$engineinfo['engine']="asterisk";\'$'\n''$engineinfo['version']="1.6.2.11";'$'\n'';p' /var/lib/asterisk/bin/retrieve_conf
Run Code Online (Sandbox Code Playgroud)
-i确认无效后,添加进行修改.
它做什么以及如何工作?
首先,我们告诉sed匹配包含您的字符串的行.在那个匹配的行上,我们将执行一个a命令,即"追加文本".
sed a命令的语法是
a\
line of text\
another line
;
Run Code Online (Sandbox Code Playgroud)
请注意,文字换行符是此语法的一部分.要使它全部一行(并保留复制粘贴能力)代替我使用的文字换行符$'\n',它将告诉bash或zsh插入一个真正的换行符.进行此工作所需的引用有点复杂:您必须退出单引号以便您可以$'\n'通过bash进行解释,然后您必须重新输入单引号字符串以防止bash解释其余的你的意见.
编辑:更新以在一个追加命令中追加两行.
| 归档时间: |
|
| 查看次数: |
2364 次 |
| 最近记录: |