[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20021231: radiosonde display of current and previous day



>From: Sridharareddy Duggireddy <address@hidden>
>Organization: USF
>Keywords: 200212311713.gBVHDKt19823 McIDAS UAPLOT

Shridhara,

>   I am trying to display the radiosonde display. I have to display the
>current and previous day's skew-T observations using UAPLOT. In that
>command I have to enter previous day's date in order to display previous
>day's image. can you please tell me how to display the previous day's date
>in linux?

The GNU version of 'date' on Linux allows you to list out the date value
contained in a STRING.  Here is the top part of the man page for date:

% man date

DATE(1)                        FSF                        DATE(1)

NAME
       date - print or set the system date and time

SYNOPSIS
       date [OPTION]... [+FORMAT]
       date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

DESCRIPTION
       Display  the  current time in the given FORMAT, or set the
       system date.

       -d, --date=STRING
              display time described by STRING, not `now'

 ...

This allows you to list the date for 'yesterday':

% date -d yesterday
Mon Dec 30 11:38:49 MST 2002

As you can see from the man page, 'date' allows you to format the
output in a variety of ways.

McIDAS understands a variety of formats for date and time. The McIDAS
command ARGHELP will list out those formats that are recognized.
Here are the acceptable formats for dates in McIDAS:

ARGHELP DATE
--------------------------------------------------------------------------------
Valid McIDAS date argument format:
   [+-]yyyyddd , [+-]yyyy/mm/dd , [+-]mm/dd , [+-]dd/mon/yyyy , [+-]dd/mon ,
                 [+-]yyyy-mm-dd , [+-]mm-dd , [+-]dd-mon-yyyy , [+-]dd-mon

   where:  yyyy = year           (def=current year & century)
           mm   = month          (def=current month)
           mon  = calendar month (>=3 chars)
           dd   = day of month   (required)
           ddd  = day of year    (required)
           '/'  = today's date

Acceptable Forms:  [+-]yyyy/mm/dd  , [+-]mm/dd  , [+-]/mm/dd  , [+-]yyyyddd ,
                   [+-]dd/mon/yyyy , [+-]dd/mon , [+-]dd/mon/ , [+-]ddd     ,
           [+-]/ , [+-]/dd         , [+-]dd/    , [+-]//dd    , [+-]dd//
--------------------------------------------------------------------------------

So, you have your choice of how to format the output from 'date' into a
form that McIDAS will understand.  For instance, if you wanted the date
to be represented by the century, year, and Julian day [YYYYDDD], you
would do the following:

% date -d yesterday +%Y%j
2002364

If you wanted the format YYYY/MM/DD, you would use:

% date -d yesterday +%Y/%m/%d
2002/12/30

etc.

The last thing you need to worry about is Universal Coordinated Time (UTC).
Since dates/times in McIDAS are always specified in UTC, you need to
tell 'date' to do its calculation using UTC.  This is done by including
the '-u' flag:

date -u -d yesterday +%Y%j
date -u -d yesterday +%Y/%m/%d

and so on.

Check out the man page for date on your Linux system for more information.

Tom


NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.