我想在使用sed的模式之后合并两行(没有awk因为我正在使用windows)所以例如这里是输入
pattern
XXXXXX
YYYYYY
Run Code Online (Sandbox Code Playgroud)
这是输出:
XXXXXXYYYYYY
Run Code Online (Sandbox Code Playgroud)
Tho*_*hor 18
用sed这个工作:
sed -n '/pattern/ {s/.*//; N; N; s/\n//g; p;}'
Run Code Online (Sandbox Code Playgroud)
/pattern/匹配模式并执行大括号块{ }.s/.*//从模式空间中删除模式,更短但更模糊的摆脱模式的方法是交换模式空间并使用x命令保持空间.N 从输入文件中获取下一行并将其附加到模式空间.s/[\r\n]//g 从模式空间中删除所有换行符和回车符.p 打印图案空间.组合3行的稍微简短的解决方案是:
sed -n '/pattern/ {x; N; N; s/\n//g; p;}'
Run Code Online (Sandbox Code Playgroud)