SYNOPSIS
bufrencode.pl --data <data file> --metadata <metadata file>
[--outfile <file to print encoded BUFR message to>]
[--strict_checking n]
[--tableformat <BUFRDC|ECCODES>]
[--tablepath <path to BUFR tables>]
[--verbose n]
[--help]
DESCRIPTION
Encode a BUFR message, reading data and metadata from files. The resulting BUFR message will be printed to STDOUT unless option --outfile
is set.
Execute without arguments for Usage, with option --help for some additional info. See also https://wiki.met.no/bufr.pm/start for examples of use.
OPTIONS
--help Display Usage and explain the options. Almost
the same as consulting perldoc bufrencode.pl
--outfile <filename> Will print the encoded BUFR message to <filename>
instead of STDOUT
--strict_checking n n=0 Disable strict checking of BUFR format
n=1 Issue warning if (recoverable) error in
BUFR format
n=2 (default) Croak if (recoverable) error in BUFR format.
Nothing more in this message will be encoded.
--tableformat Currently supported are BUFRDC and ECCODES (default is BUFRDC)
--tablepath <path to BUFR tables>
If used, will set path to BUFR tables. If not
set, will fetch tables from the environment
variable BUFR_TABLES, or if this is not set:
will use DEFAULT_TABLE_PATH_<tableformat>
hard coded in source code.
--verbose n Set verbose level to n, 0<=n<=6 (default 0).
Verbose output is sent to STDOUT, so ought to
be combined with option --outfile
Required options
--metadata <metadata file>
For the metadata file, use this as a prototype and change the values as desired:
BUFR_EDITION 4
MASTER_TABLE 0
CENTRE 88
SUBCENTRE 0
UPDATE_SEQUENCE_NUMBER 0
OPTIONAL_SECTION 0
DATA_CATEGORY 0
INT_DATA_SUBCATEGORY 2
LOC_DATA_SUBCATEGORY 255
MASTER_TABLE_VERSION 14
LOCAL_TABLE_VERSION 0
YEAR 2008
MONTH 9
DAY 1
HOUR 6
MINUTE 0
SECOND 0
OBSERVED_DATA 1
COMPRESSED_DATA 0
DESCRIPTORS_UNEXPANDED 308004 012005 002002
For BUFR edition < 4, replace the lines INT_DATA_SUBCATEGORY, LOC_DATA_SUBCATEGORY, YEAR and SECOND with new lines DATA_SUBCATEGORY and YEAR_OF_CENTURY (the order of lines doesn't matter).
--data <data file>
For the data file, use the same format as would result if you did run on the generated BUFR message
bufrread.pl <bufr file> --data_only | cut -c -31
or if you use bufrread.pl with --width n
, replace 31 with n+16. For example, the file might begin with
1 001195 Newport
2 005002 51.55
3 006002 -2.99
4 004001 2008
...
Every time a new line starting with the number 1 is met, a new subset will be generated in the BUFR message. Lines not starting with a number are ignored.
For missing values, use 'missing' or stop the line after the BUFR descriptor.
Associated values should use BUFR descriptor 999999, and operator descriptors 22[2345]000 and 23[2567]000 should not have a value, neither should this line be numbered, e.g.
160 011002 missing
222000
161 031002 160
162 031031 0
...
To encode a NIL subset, all delayed replication factors should be nonzero, and all other values set to missing except for the descriptors defining the station.
Options may be abbreviated, e.g. --h
or -h
for --help
AUTHOR
Pål Sannes <pal.sannes@met.no>
COPYRIGHT
Copyright (C) 2010-2023 MET Norway