Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

List content of BUFR files printing values of some header keys. Only scalar keys can be printed. It does not fail when a key is not found.

USAGE

bufr_ls [options] bufr_file bufr_file ...

OPTIONS

...

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

...

C style format for floating-point values.

...

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

...

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) or , a double (key:d) or a long an integer (key:li) type can be specified. Default type is string.

...

Order by. The output will be ordered according to the order by directive. Order by example: "step asc, centre desc" (step ascending and centre descending) 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.

...

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

...

bufr_ls examples

  1. Without options a default list of keys is printed. The default list can be different depending on the type of bufr BUFR message.

    Code Block
     
    >  bufr_ls ../data/bufr/syno_*multi.bufr 
    
    The result is:
    Code Block
     
    ../data/bufr/syno_1multi.bufr
    masterTablesVersionNumber centre localTablesVersionNumber   rdbType                    rdbSubtype                 rdbtimeYear                rdbtimeMonth               masterTablesVersionNumber  localTablesVersionNumber   typicalDate                typicalTime                numberOfSubsetsrdbType            localLatitude        rdbSubtype      localLongitude           rdbtimeDate  
    13              rdbtimeTime           1     numberOfSubsets            localLatitude         1     localLongitude              
    ecmf       1                          2012                       10                         20121030                   000000                     1                          7.45                       151.83                    
    1 of 1 messages in ../data/bufr/syno_1.bufr
    
    ../data/bufr/syno_2.bufr
    13                         1                          120090124                          1                          2012                       10                         20121030              120000     000000                     1                          7.45                       151.83                    
    1 of 1 messages in ../data/bufr/syno_2.bufr
    
    ../data/bufr/syno_3.bufr
    13                      20090124   1                          1                          3                          2012 121435                      10                         20121030                   000000                     1                          -1570.93                      -58.67                     
    1 of 1 messages in ../data/bufr/syno_3.bufr
    
    ../data/bufr/syno_4.bufr
    13ecmf                         1 13                         1                          120090124                          2012                       10                         20121030         120000          000000                     1                          54.18                      7.9                       
    1 of 1 messages in ../data/bufr/syno_4.bufr
    
    ../data/bufr/syno_multi.bufr
    13                      20090124   1                          1     121435                     1                          200977                       1                          20090124                   120000                     1                          70.93  15.5                      -8.67                     
    13
    ecmf                         1                          1                          1                13          2009                       1                          20090124                   120000                     1                          77                         15.5                      
    13                         1                          1                          1                          2009                       1                          20090124                   120000121435                     1                          78.92                      11.93                     
    3 of 3 messages in ../data/bufr/syno_multi.bufr
    
    73 of 73 total messages in 51 files
    
    To print offset and count number in file use the keys offset and count. Also the total count in a


  2. It is allowed to use wildcards in filenames. set of files is available as countTotal

    Code Block
     
    >  > bufr_ls  -p offset,count,countTotal ../data/bufr/syno_*.bufr
    ../data/bufr/syno_1.bufr
    offset      count       countTotal  
    0           1           1          
    1 of 1 messages in ../data/bufr/syno_1.bufr
    
    ../data/bufr/syno_2.bufr
    0           2           2          
    1 of 1 messages in ../data/bufr/syno_2.bufr
    
    ../data/bufr/syno_3.bufr
    0           3           3          
    1 of 1 messages in ../data/bufr/syno_3.bufr
    
    ../data/bufr/syno_4.bufr
    0           4           4          
    1 of 1 messages in ../data/bufr/syno_4.bufr
    
    ../data/bufr/syno_multi.bufr
    0           5           5          
    220         6           6          
    440         7           7          
    3 of 3 messages in 
    


  3. To list only a specific set of keys use the -p option.

    Code Block
     
    >  bufr_ls -p totalLength,bufrHeaderCentre,bufrHeaderSubCentre ../data/bufr/syno_multi.bufr
    
    7 of 7 total messages in 5 files
    


  4. To list only a subset of messages use the -w (where option). Only the SYNOP 12 UTC messages are listed with the following line.

    Code Block
     
    >  bufr_ls -W 8 -w dataCategorytypicalTime=0"120000" ../data/bufr/syno_*.bufr ../data/bufr/temp_*.bufr
    


  5. All the non-SYNOP 12 UTC messages are listed as follows:

    Code Block
     
    >   bufr_ls -W 8 -w dataCategorytypicalTime!=0"120000" ../data/bufr/syno_*.bufr
    


  6. To list only the second message from a BUFR file:

    Code Block
     
    >  bufr_ls -w count=2 ../data/bufr/tempsyno_*multi.bufr