你好,我有一个格式为的数据文件
n tphysical outputID ###
40-column-data-here
40-column-data-here
.
.
.
40-column-data-here
n tphysical outputID ###
40-column-data-here
40-column-data-here
.
.
.
40-column-data-here
等等。我遇到的问题是,我需要基于tpphysical过滤数据。然后将条件应用于40 column data
的第二列,用于我感兴趣的物理下的列。首先我想找到awk '(NF == 4){print NR}' my/file.dat
所在的NR
,然后将其管道传输到另一个awk,在此基础上过滤NR
。但我的文件很大,我想可能有一些更简单的方法可以做到这一点。
期望输出:
n tphisical = some_number outputID ###
column2 column8
column2 column8
.
.
.
column2 column8
将tpphysical的值保存到变量中,而不是打印NR。在后续行中使用该值。每次你得到一条有4个字段的行,你就会捕捉到tpphysical的新值:
NF == 4 {tp = $2;}
$1 == 40 { v = $2; ... do something with v, referencing tp as appropriate...}