bufr.pm:bufrread_help

This is an old revision of the document!


Usage: /metno/local/bin/bufrread.pl <bufr file(s)> [options]

Will print section 0-4 in BUFR messages in <bufr file(s)>.
Options (may be abbreviated, e.g. --h or -h for --help) are:

        --codetables    Use code and flag tables to resolve values where unit
                        is [CODE TABLE] or [FLAG TABLE]
        --data_only     Print section 4 (data section) only
        --param <descriptor file>
                        Decode parameters with descriptors in <descriptor file> only
        --filter <filter file>
                        Decode observations meeting criteria in <filter file> only
        --bitmap        Display bit mapped values on same line
        --noqc          Do not decode quality control
                        (or any descriptors following 222000)
        --outfile <filename>
                        Will print to <filename> instead of STDOUT
        --optional_section
                        Display a hex dump of optional section if present
        --width n       Set width of field used for data values to n characters
                        (default is 15)
        --strict_checking n n=0 (default) Disable strict checking of BUFR format
                            n=1 Issue warning if (recoverable) error in
                                BUFR format
                            n=2 Croak if (recoverable) error in BUFR format.
                                Nothing more in this message will be decoded.
        --all_operators Show all operator descriptors when printing section 4
        --tablepath <path to BUFR tables>
                        Set path to BUFR tables (overrides ENV{BUFR_TABLES})
        --verbose n     Set verbose level to n, 0<=n<=3 (default 0)
        --help          Print this Usage

You should probably set
        export BUFR_TABLES=/usr/local/emos/bufrtables
or use the --tablepath option.

Each line in <descriptor file> should start with a BUFR descriptor (6 digits).
Rest of line will be ignored. bufrread will extract values for these descriptors
only. If used together with --filter, <descriptor file> must contain all descriptors
in <filter file>.

Using --filter will decode only those observations that meet one of the criteria in
<filter file> (and all of those criteria marked D!). Comments (starting with #) are
ignored. An example of a filter file is

# All stations in WMO block 01
D: 001001
1
D: 001001 001002
3 895
6 252
D: 001011
LF5U       # Ekofisk
D!: 004004
6
7

which decodes all observations with block number 01, two other specific wmo stations
and one specific ship, all of which having hour (004004) equal to 6 or 7.
If there is no value line after a descriptor line, it is enough that the observation
contains the descriptor(s), whatever the values are. So to extract all ship messages
from a BUFR synop file, the filter file should contain this single line only:

D: 001011

If an error occurs during decoding (typically because the required BUFR table is
missing or message is corrupt) the message is skipped, and the number of errors
is reported at end of output.
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • bufr.pm/bufrread_help.1265026359.txt.gz
  • Last modified: 2022-05-31 09:23:11
  • (external edit)