Shell:在给定的文本行之间添加一个新行

Den*_*nis 1 shell awk text newline sed

这个问题不是要问的是如何在与模式匹配的每一行的下方或上方添加一个新行.

我要做的是在一行上存在的模式之间添加一个新行.

这是一个例子.

之前:

周一:8 AM-10PM

后:

星期一:

8 AM-10PM

因此,在这种情况下,在每个"星期一"模式后插入新行.

str*_*ger 6

echo 'Monday:8am-10pm' | sed -e 's/^Monday:/&\n/'
Run Code Online (Sandbox Code Playgroud)

对于最多' :'的字符:

echo 'Monday:8am-10pm' | sed -e 's/^[^:]*:/&\n/'
Run Code Online (Sandbox Code Playgroud)