2015-02-17 121 views
0

我有这样一个GRIB文件,其中,当我做wgrib2就可以了,我有以下参数:wgrib2和egrep的隔离输出参数

wgrib2 xxx.grib2 

5:211198:d=2015021300:HGT:10 mb:anl: 
6:262648:d=2015021300:TMP:10 mb:anl: 
7:283996:d=2015021300:RH:10 mb:anl: 
8:292394:d=2015021300:UGRD:10 mb:anl: 
9:317511:d=2015021300:VGRD:10 mb:anl: 
10:340062:d=2015021300:ABSV:10 mb:anl: 
11:383260:d=2015021300:O3MR:10 mb:anl: 
12:430173:d=2015021300:HGT:20 mb:anl: 
13:481715:d=2015021300:TMP:20 mb:anl: 
14:503017:d=2015021300:RH:20 mb:anl: 
15:515254:d=2015021300:UGRD:20 mb:anl: 
16:541214:d=2015021300:VGRD:20 mb:anl: 
17:564276:d=2015021300:ABSV:20 mb:anl: 
18:608222:d=2015021300:O3MR:20 mb:anl: 
19:658193:d=2015021300:HGT:30 mb:anl: 
20:717255:d=2015021300:TMP:30 mb:anl: 
21:739796:d=2015021300:RH:30 mb:anl: 
22:755685:d=2015021300:UGRD:30 mb:anl: 
23:782085:d=2015021300:VGRD:30 mb:anl: 
24:805410:d=2015021300:ABSV:30 mb:anl: 
25:850474:d=2015021300:O3MR:30 mb:anl: 
29:15146624:d=2015021300:TMP:80 m above ground:anl: 
30:15191769:d=2015021300:SPFH:80 m above ground:anl: 
31:15252084:d=2015021300:PRES:80 m above ground:anl: 
32:15328443:d=2015021300:UGRD:80 m above ground:anl: 
33:15407088:d=2015021300:VGRD:80 m above ground:anl: 
34:15485944:d=2015021300:TMP:100 m above ground:anl: 
35:15531004:d=2015021300:UGRD:100 m above ground:anl: 
36:15609651:d=2015021300:VGRD:100 m above ground:anl: 
37:15688696:d=2015021300:TMP:1829 m above mean sea level:anl: 
38:15735588:d=2015021300:UGRD:1829 m above mean sea level:anl: 
39:15815796:d=2015021300:VGRD:1829 m above mean sea level:anl: 
40:15896935:d=2015021300:TMP:2743 m above mean sea level:anl: 
41:15942724:d=2015021300:UGRD:2743 m above mean sea level:anl: 
42:16024306:d=2015021300:VGRD:2743 m above mean sea level:anl: 
46:2015021300:PRMSL:mean sea level:anl: 

现在我想做的事情wgrib2 xxx.grib2 |例如egrep'PARMETERS',只有在mb(即UGRD:30 mb:anl,而不是UGRD?m高于海平面)的压力水平下测量时才隔离出HGT,TMP和UGRD参数。我知道我可以使用以下命令做到这一点:

wgrib2 xxx.grib2 | egrep 'TMP:|:HGT:|:UGRD' |egrep 'mb' based on an earlier response from stackoverflow. However, I also want PRMSL:mean sea level:anl including in my list of parameters being isolated out so I could get the following from the command: 

wgrib2 xxx.grib2 |egrep 'PARMETERS' 

5:211198:d=2015021300:HGT:10 mb:anl: 
6:262648:d=2015021300:TMP:10 mb:anl: 
8:292394:d=2015021300:UGRD:10 mb:anl: 
12:430173:d=2015021300:HGT:20 mb:anl: 
13:481715:d=2015021300:TMP:20 mb:anl: 
15:515254:d=2015021300:UGRD:20 mb:anl: 
19:658193:d=2015021300:HGT:30 mb:anl: 
20:717255:d=2015021300:TMP:30 mb:anl: 
22:755685:d=2015021300:UGRD:30 mb:anl: 
46:2015021300:PRMSL:mean sea level:anl: 

如何建立wgrib2 xxx.grib2 | egrep的“参数”命令,这样我就可以得到上面的输出?

+0

您是否希望匹配整个参数行或只是HGT,TMP,UGRD? – repzero 2015-02-17 23:05:03

回答

0

如果我理解这个问题仔细

egrep '(TMP:|:HGT:|:UGRD)[0-9]+ mb' file 
0

wgrib2 xxx.grb2 -match “:(UGRD | HGT | TMP):” -match “:[0-9] * MB:”

wgrib2 xxx.grb2 | egrep“:(UGRD | HGT | TMP):”| egrep“:[0-9] * mb:”