如何在shell脚本中找到特殊字符#{}时将新行写入文本文件

时间:2016-05-18 10:27:40

标签: shell

我想在找到一个特殊字符"#{}"时在我的文本文件中添加一个新行。应该使用shell脚本在这些特殊字符之后添加新行。请帮我解决这个问题。 例如,让我的文本文件为abc.txt,内容为

for \n
a bug  \n
"#{}"  \n
to resolve  \n

现在我需要在#{}之后添加行的脚本 输出应该是

for  \n
a bug  \n
"#{}"
check and let me know \n - new line added
to resolve   \n

1 个答案:

答案 0 :(得分:1)

您可以使用此sed:

sed 's/\("#{}"\).*/\1\ncheck and let me know \\n - new line added/' file

for \n
a bug  \n
"#{}"
check and let me know \n - new line added
to resolve  \n

原始档案:

cat file
for \n
a bug  \n
"#{}"  \n
to resolve  \n

仅添加换行符:

sed 's/\("#{}"\).*/\1\n/' file