(all examples are using /usr/bin/ksh shell)

You could do it this way:

DATE=$(date '+%y%j')
DATE=$((${DATE} - 1))
[ ${#DATE} -eq 4 ] && DATE="0${DATE}"

But you have bigger problems my friend.  What happens if the date is 02001
and you subtract 1.  The result is 02000 which is invalid.  Since you are
in a script that is using the db anyway why not do something like this:

{
  sqlplus -s /nolog <<EOF
    connect /
    set pagesize 0
    select to_char(sysdate - 1, 'YYDDD') from dual;
    exit;
  EOF
} | grep -iv connected | read DATE


Brian P. MacLean
Oracle DBA, OCP8i



                                                                                       
                       
                    "Ball, Terry"                                                      
                       
                    <[EMAIL PROTECTED]       To:     Multiple recipients of list ORACLE-L 
<[EMAIL PROTECTED]>  
                    om>                  cc:                                           
                       
                    Sent by:             Subject:     Sightly OT: Unix scripting       
                       
                    [EMAIL PROTECTED]                                                     
                       
                    om                                                                 
                       
                                                                                       
                       
                                                                                       
                       
                    03/21/02 12:08                                                     
                       
                    PM                                                                 
                       
                    Please respond                                                     
                       
                    to ORACLE-L                                                        
                       
                                                                                       
                       
                                                                                       
                       




Environment:  Oracle 8.1.6.3 on Solaris 5.8

I am not a Unix Guru by any strech of the imagination, so I can use all the
help I can get.  I am trying to write a shell script to execute sqlldr of a
file whose name includes yesterday's 2 digit year and julian day in the
format: file_yyjjj.csv.  I can get today's date fine by setting a variable
to be DATE=`date '+%y%j'`

But when I try to get DATE -1 it strips the leading 0 (since it is
currently
02).  Does anyone have any suggestions as to how I can retain the leading 0
and still get yesterday's date?

TIA,

Terry

Terry Ball, DBA
Birch Telecom
Work: 816-300-1335
FAX:  816-300-1801

--
Please see the official ORACLE-L FAQ: http://www.orafaq.com
--
Author: Ball, Terry
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).




-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: 
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to