[英]Merge 1 line with multiple lines in a text file in bash
I have a text file with the following pattern.我有一个具有以下模式的文本文件。
Heading A
zone zonename1;
zone zonename2;
zone zonename3;
Heading B
zone zonename4;
zone zonename5;
Desired Output:期望输出:
zone zonename1;Heading A;
zone zonename2;Heading A;
zone zonename3;Heading A;
zone zonename4;Heading B;
zone zonename5;Heading B;
Search for the word "zone" and get the respective heading.搜索单词“zone”并获得相应的标题。
Following awk is here to help you.以下 awk 可以帮助您。 on a Solaris/SunOS system, change awk
to /usr/xpg4/bin/awk
, /usr/xpg6/bin/awk
, or nawk
在 Solaris/SunOS 系统上,将awk
更改为/usr/xpg4/bin/awk
、 /usr/xpg6/bin/awk
或nawk
awk '/^Heading/{val=$0;next} NF{print $0,val";"}' Input_file
Output will be as follows.输出如下。
zone zonename1; Heading A;
zone zonename2; Heading A;
zone zonename3; Heading A;
zone zonename4; Heading B;
zone zonename5; Heading B;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.