根据模式打印文件

时间:2017-07-11 04:47:21

标签: unix

考虑包含以下数据的文件“test”:

REG NO: 123
20
24
REG NO: 124
30
70

需要打印以下内容:

123 20
123 24
124 30
124 70

需要从不同字段打印该值。并且需要重复标记列的内容(regno,即123,124)。

1 个答案:

答案 0 :(得分:0)

在awk中:

$ awk 'NF>1 {p=$NF;next} {print p, $1}' file
123 20
123 24
124 30
124 70

说明:

$ awk '
NF>1 {            # when a record has more than one field
    p=$NF         # store the last field to p var
    next          # proceed to next record
} 
{
    print p, $1   # otherwise output the p and the value on the record
}' file