Get values of some keys from a grib file. It is similar to grib_ls, but fails returning an error code when an error occurs (e.g. key not found).


grib_get [options] grib_file grib_file ...



Force. Force the execution not to fail on error.

-p key[:{s|d|i}],key[:{s|d|i}],...

Declaration of keys to print. For each key a string (key:s), a double (key:d) or an integer (key:i) type can be requested. Default type is string.

-F format

C style format for floating point values.

-B 'order by' directive

Order by. The output will be ordered according to the 'order by' directive.
Example: "step:i asc, centre desc" (step numeric ascending and centre descending)
Default sort mode is 'asc'.

-l latitude,longitude[,MODE,file]

Value close to the point of a latitude/longitude.
Allowed values for MODE are:
 4 (4 values in the nearest points are printed) Default
 1 (the value at the nearest point is printed)
file (file is used as mask. The closer point with mask value>=0.5 is printed)

-P key[:{s|d|i}],key[:{s|d|i}],...

As -p adding the declared keys to the default list.

-w key[:{s|d|i}]{=|!=}value,key[:{s|d|i}]{=|!=}value,...

Where clause. Messages are processed only if they match all the key/value constraints. A valid constraint is of type key=value or key!=value. For each key a string (key:s), a double (key:d) or an integer (key:i) type can be specified.
Default type is string.
In the value you can also use the forward-slash character '/' to specify an OR condition (i.e. a logical disjunction)
Note: only one -w clause is allowed.

-n namespace

All the keys belonging to namespace are printed.

-s key[:{s|d|i}]=value,key[:{s|d|i}]=value,...

Key/values to set. For each key a string (key:s), a double (key:d) or an integer (key:i) type can be defined. By default the native type is set.



-W width

Minimum width of each column in output. Default is 10.


Mars keys are printed.


Multi-field support off. Turn off support for multiple fields in a single grib message.


Copy GTS header.


GRIBEX compatibility mode.

-T T | B | M | A

Message type. T->GTS, B->BUFR, M->METAR (Experimental),A->Any (Experimental). The input file is interpreted according to the message type.


Does not fail when the message has wrong length

-X offset

Input file offset in bytes. Processing of the input file will start from "offset".

-i index

Data value corresponding to the given index is printed.

grib_get examples

  1. grib_get fails if a key is not found:

    > grib_get -p nosuchkey ../data/tigge_pf_ecmwf.grib2
    ECCODES ERROR   :  Key/value not found
  2. To get the step of the first GRIB message in a file:

    > grib_get -w count=1 -p step ../data/tigge_pf_ecmwf.grib2