我有一个名为:options.conf的文件 在该文件中是这样的:
where val = 'Endorsement'
现在我已经制作了一个SED bash .SH文件(一切正常)预计1件事不起作用:(那就是在文件中加一行......后 -queue_run \
-rejected_header \
-retry_defer \
-skip_delivery \
我想在-skip_delivery \
+arguments
(不含黑色,只有文字)
所以它看起来像这样:
-skip_delivery \
我现在试着让这项工作工作2个小时,有人可以帮助我吗? 我已经尝试了这个:
-queue_run \
-rejected_header \
-retry_defer \
-skip_delivery \
+arguments
但没有结果:(
答案 0 :(得分:1)
只需:
sed '/-skip_delivery/a \ \ +arguments' file
sed命令中的错误是包含正则表达式\/
的转义斜杠。
答案 1 :(得分:0)
sed append语法是这样的:
sed '/PATTERN/ a\
Line which you want to append' filename
您的命令有两个问题:
\
需要转义。你没有逃避它,所以它将命令a
之前的斜杠变成了文字字符。 -e
来指定要执行的命令。固定代码如下所示:
sed -i -e '/ -skip_delivery \\/ a\
+arguments' /root/options.conf