DESCRIPTION
Apply the rules defined in rules_file to each BUFR message in the BUFR files provided as arguments.
USAGE
bufr_filter [options] rules_file file file ...
OPTIONS
-f
Force. Force the execution not to fail on error.
-o output_grib_file
Output grib is written to output_grib_file. If an output grib file is required and -o is not used, the output grib is written to filtered.out
-V
Version.
-g
Copy GTS header.
-7
Does not fail when the message has wrong length
-v
Verbose.
bufr_filter examples
The bufr_filter processes sequentially all bufr messages contained in the input files and applies the rules to each one of them. Input messages can be written to the output by using the "write" statement. The write statement can be parameterised so that output is sent to multiple files depending on key values used in the output file name.
To print header information only (all BUFR messages must have it)
print "[bufrHeaderCentre] [bufrHeaderSubCentre] [masterTablesVersionNumber] [localTablesVersionNumber] [numberOfSubsets]";
> bufr_filter rules_file ../data/bufr/syno_multi.bufr 98 0 13 1 1 98 0 13 1 1 98 0 13 1 1
To print values from the data section the messages has to be unpacked. This rules_file:\
will print out some data values from SYNOP BUFR messages.set unpack=1; print "block=[blockNumber] station=[stationNumber] lat=[latitude] lon=[longitude] t2=[airTemperatureAt2M]";
> bufr_filter rules_file ../data/bufr/syno_multi.bufr block=1 station=1 lat=70.93 lon=-8.67 t2=274.5 block=1 station=3 lat=77 lon=15.5 t2=268.4 block=1 station=7 lat=78.92 lon=11.93 t2=268.5