Sponsored Content
Operating Systems AIX How to get the date yesterday in AIX sh Post 302302712 by kah00na on Tuesday 31st of March 2009 05:34:18 PM
Old 03-31-2009
I got sick of trying to script yesterday's date into so many different formats that I finally wrote and stole portions of this script to do it for me. I just pass in any arguments I want and out comes yesterdays date. I named the script "yesterday" and put it in /usr/local/bin on all my boxes:

Code:
FORMAT=${1:-YYYYMMDD}

if [ "$FORMAT" = "-help" ] || [ "$FORMAT" = "-h" ]; then
        echo "Usage:    Arguments are optional and can be given in any order"
        echo "          yesterday  [YY|yy|YYYY|yyyy|MM|mm|MMM|mmm|DD|dd]"
        exit 0
fi

typeset -Z2 YESTERDAY
typeset -Z2 MONTH

YESTERDAY=$((`date +%d` -1))
MONTH=`date +%m`
YEAR=`date +%Y`
if [ "$YESTERDAY" -eq "0" ]; then
        MONTH=$((MONTH-1))
        if [ $MONTH -eq "0" ]; then
                MONTH=12
                YEAR=$((YEAR-1))
        fi
        set `cal $MONTH $YEAR`
        shift $(($# - 1))
        YESTERDAY=$1
fi

ABBR_MONTH=$(echo $MONTH | sed \
        -e "s/01/Jan/" \
        -e "s/02/Feb/" \
        -e "s/03/Mar/" \
        -e "s/04/Apr/" \
        -e "s/05/May/" \
        -e "s/06/Jun/" \
        -e "s/07/Jul/" \
        -e "s/08/Aug/" \
        -e "s/09/Sep/" \
        -e "s/10/Oct/" \
        -e "s/11/Nov/" \
        -e "s/12/Dec/")

## Print the result
echo "${FORMAT}" | sed \
        -e "s/[Mm][Mm][Mm]/${ABBR_MONTH}/" \
        -e "s/[Yy][Yy][Yy][Yy]/${YEAR}/" \
        -e "s/[Yy][Yy]/$(echo ${YEAR}|cut -c3-4)/" \
        -e "s/[Mm][Mm]/${MONTH}/" \
        -e "s/[Dd][Dd]/${YESTERDAY}/"

Here is some examples of it running:
Code:
hostname:/:$ date
Tue Mar 31 16:28:15 CDT 2009
hostname:/:$ yesterday yyyymmdd
20090330
hostname:/:$ yesterday yyyy/mm/dd
2009/03/30
hostname:/:$ yesterday MM/DD/YYYY
03/30/2009
hostname:/:$ yesterday MM-DD-YYYY
03-30-2009
hostname:/:$ yesterday "MM dd YYYY"
03 30 2009
hostname:/:$

This User Gave Thanks to kah00na For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

yesterday date month/date

Hi expert, I want to retrieve yesterday su log. How to calculate and assign variable value ( 06/23 ) in myVariable ? #!/bin/sh myVariable=yesterday date in month/date cat /var/adm/sulog | grep $myVariable > file.txt many thanks! (5 Replies)
Discussion started by: skully
5 Replies

2. Shell Programming and Scripting

Compare date from db2 table to yesterday's Unix system date

I am currently running the following Korn shell script which works fine: #!/usr/bin/ksh count=`db2 -x "select count(*) from schema.tablename"` echo "count" I would like to add a "where" clause to the 2nd line that would allow me to get a record count of all the records from schema.tablename... (9 Replies)
Discussion started by: sasaliasim
9 Replies

3. Shell Programming and Scripting

yesterday date

HI All, I am trying so long to find the yesterday's date to run a script but i failed kinldy share the command to find yesterday's date in ksh i tried with date --date='1 day ago' but it displaying error your help will highly apeerciated. Thanks (7 Replies)
Discussion started by: thelakbe
7 Replies

4. Shell Programming and Scripting

Need help in Shell Script comparing todays date with Yesterday date from Sysdate

Hi, I want to compare today's date(DDMMYYYY) with yesterday(DDMMYYYY) from system date,if (today month = yesterday month) then execute alter query else do nothing. The above requirement i want in Shell script(KSH)... Can any one please help me? Double post, continued here. (0 Replies)
Discussion started by: kumarmsk1331
0 Replies

5. Shell Programming and Scripting

How to display yesterday Date in AIX

Hi, I need help to display the yesterday date in format mentioned below: 2012-06-26-PMI tried this but it displays current date: `date +%Y-%m-%d-%p` (9 Replies)
Discussion started by: aroragaurav.84
9 Replies

6. Shell Programming and Scripting

[Solved] Replace yesterday date with today's date except from the first line

Hello, I have a file like this: 2012112920121130 12345620121130msABowwiqiq 34477420121129amABamauee e7748420121130ehABeheheei in case the content of the file has the date of yesterday within the lines containing pattern AB this should be replaced by the current date. But if I use... (3 Replies)
Discussion started by: Lilu_CK
3 Replies

7. Shell Programming and Scripting

Get yesterday date

Hi Friend, i am using OS HP-UX vvftf320 B.11.11 U 9000/800 511076331 unlimited-user license now i have used below command but it giving today's date. i need your help to get yesterdate. Please correct me. date +"%d%m%Y%H%M%S" -d "1 days ago Thanks in advance, Jewel (3 Replies)
Discussion started by: Jewel
3 Replies

8. Shell Programming and Scripting

How to get tomorrow,yesterday date from date Command

Hi I want to get tomorrow and yesterday date from date command. My shell is KSH and server is AIX. I tried several options, but unable to do. Please help on this. Regards Rajesh (5 Replies)
Discussion started by: rajeshmepco
5 Replies

9. Shell Programming and Scripting

How to append date to filename, but base it on yesterday's date?

Hello, I'd like to write a monthly archive script that archives some logs. But I'd like to do it based on yesterday's date. In other words, I'd like to schedule the script to run on the 1st day of each month, but have the archive filename include the previous month instead. Here's what I... (5 Replies)
Discussion started by: nbsparks
5 Replies

10. Shell Programming and Scripting

Shell script to compare two files of todays date and yesterday's date

hi all, How to compare two files whether they are same are not...? like i had my input files as 20141201_file.txt and 20141130_file2.txt how to compare the above files based on date .. like todays file and yesterdays file...? (4 Replies)
Discussion started by: hemanthsaikumar
4 Replies
Prima::Calendar(3)					User Contributed Perl Documentation					Prima::Calendar(3)

NAME
Prima::Calendar - standard calendar widget SYNOPSIS
use Prima::Calendar; my $cal = Prima::Calendar-> create( useLocale => 1, onChange => sub { print $_[0]-> date_as_string, " "; }, ); $cal-> date_from_time( localtime ); $cal-> month( 5); DESCRIPTION
Provides interactive selection of date between 1900 and 2099 years. The main property, date, is a three-integer array, day, month, and year, in the format of perl localtime ( see "localtime" in perlfunc ) - day can be in range from 1 to 31,month from 0 to 11, year from 0 to 199. API
Events Change Called when the date property is changed. Properties date DAY, MONTH, YEAR Accepts three integers in format of "localtime". DAY can be from 1 to 31, MONTH from 0 to 11, YEAR from 0 to 199. Default value: today's date. day INTEGER Selects the day in month. firstDayOfWeek INTEGER Selects the first day of week, an integer between 0 and 6, where 0 is Sunday is the first day, 1 is Monday etc. Default value: 0 month Selects the month. useLocale BOOLEAN If 1, the locale-specific names of months and days of week are used. These are read by calling "POSIX::strftime". If invocation of POSIX module fails, the property is automatically assigned to 0. If 0, the English names of months and days of week are used. Default value: 1 See also: date_as_string year Selects the year. Methods can_use_locale Returns boolean value, whether the locale information can be retrieved by calling "strftime". month2str MONTH Returns MONTH name according to useLocale value. make_months Returns array of 12 month names according to useLocale value. day_of_week DAY, MONTH, YEAR, [ USE_FIRST_DAY_OF_WEEK = 1 ] Returns integer value, from 0 to 6, of the day of week on DAY, MONTH, YEAR date. If boolean USE_FIRST_DAY_OF_WEEK is set, the value of "firstDayOfWeek" property is taken into the account, so 0 is a Sunday shifted forward by "firstDayOfWeek" days. The switch from Julian to Gregorian calendar is ignored. date_as_string [ DAY, MONTH, YEAR ] Returns string representation of date on DAY, MONTH, YEAR according to useLocale property value. date_from_time SEC, MIN, HOUR, M_DAY, MONTH, YEAR, ... Copies date from "localtime" or "gmtime" result. This helper method allows the following syntax: $calendar-> date_from_time( localtime( time)); AUTHOR
Dmitry Karasik, <dmitry@karasik.eu.org>. SEE ALSO
Prima, Prima::Widget, POSIX, "localtime" in perlfunc, "time" in perlfunc, examples/calendar.pl. perl v5.14.2 2009-02-24 Prima::Calendar(3)
All times are GMT -4. The time now is 03:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy