Unix 使用脚本进行数据操作

Unix 使用脚本进行数据操作,unix,Unix,我有以下格式的数据: Key1:Value1 Key2:Value2 Key3:Value3 A B C D Key1:Value4 Key2:Value5 Key3:Value6 A1 B1 C1 Key1.. 等等。钥匙的数量始终为三个,且顺序相同。原始数据集中的值A、B、C、D之间没有额外的行 我想得到格式的输出 Value3, A B C D Value6, A1 B1 C1 . . . 关于我可以用来完成此任务的脚

我有以下格式的数据:

Key1:Value1 Key2:Value2 Key3:Value3  
A  
B   
C   
D  
Key1:Value4 Key2:Value5 Key3:Value6  
A1  
B1  
C1   
Key1.. 
等等。钥匙的数量始终为三个,且顺序相同。原始数据集中的值A、B、C、D之间没有额外的行

我想得到格式的输出

Value3, A B C D   
Value6, A1 B1 C1   
.  
.  
.  

关于我可以用来完成此任务的脚本的任何想法,正则表达式都可以帮助您,但这取决于您通常可以编写哪些类型的值来匹配Key3:[模式匹配值]然后,用for循环手动抓取下一个Key1之前的所有连续线,并停止,直到到达新的关键线并对每个部分重复

伪代码:

current_key = ""
while !EOF:
    line = next_line()
    if line has regular expression for "Key3: Value":
        process for Value
        current_key = Value
    else 
        process line as a regular ABCD value and print or whatever
没有太多的错误检查,但希望这能帮助您继续