Sponsored Content
Operating Systems Solaris How to Manipulate Date based on number of days? Post 302604046 by thmnetwork on Friday 2nd of March 2012 04:15:27 PM
Old 03-02-2012
FWIW I ran that command and got different output:

Quote:
[root@campusweb session]# date +%Y-%m-%d --date="2012-03-31 - 183 days ago"
2012-09-30
[root@campusweb session]# uname -a ; cat /etc/redhat-release
Linux campusweb.ncat.edu 2.6.18-238.9.1.el5PAE #1 SMP Fri Mar 18 12:50:00 EDT 2011 i686 i686 i386 GNU/Linux
Red Hat Enterprise Linux Server release 5.6 (Tikanga)
If you're able to get this to work with the GNU version of date, the stock "Solaris community" response is "compile it and install the GNU version."

If that's not an option, my understanding of what you're trying to get at is to calculate the date of an arbitrary number of days in the past? Basically there's no way you can do it with Solaris's date command and there's no other stock command (other than cal) that really deals with dates. But fret not this shell function should do something similar to what you're wanting (assuming perl is installed, which it should be):

Quote:
whenWas(){
secondsAgo=$(( $1 * 86400 ))
perl -e "use POSIX qw(strftime);print strftime(\"%m/%d/%Y %H:%M:%S\n\", localtime((time-$secondsAgo)))"
}
That's pretty crude but it should be pretty obvious where you want to take it from there.

- Joel
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to manipulate date?

Hi can u pls help me out with this as i am relatively new to unix. I need to use 4 different types of dates in my shell script * first day of the last(previous) month * last day of the last(previous) month * first day of the current month * (sysdate-1) yesterday's date for the current... (5 Replies)
Discussion started by: phani
5 Replies

2. Shell Programming and Scripting

Sed command to find, manipulate and replace a number

Hi, Im very new to the world of sed so I'm really not even sure if this is possible. What i need to do is read from a flat file and every time i see this line: VAL=123,456 I need to change 456 to 457 for every occurence of this line in the file. The numbers 123 and 456 are different for... (6 Replies)
Discussion started by: LT_2008
6 Replies

3. Shell Programming and Scripting

date for two days or 3 days ago

i need a script that can tell me the date 2 days ago or 3 days ago. please help (7 Replies)
Discussion started by: tomjones
7 Replies

4. Shell Programming and Scripting

how to get what date was 28 days ago of the current system date IN UNIX

Hi, Anybody knows how to get what date was 28 days ago of the current system date through UNIX script. Ex : - If today is 28th Mar 2010 then I have to delete the files which arrived on 1st Mar 2010, (15 Replies)
Discussion started by: kandi.reddy
15 Replies

5. Shell Programming and Scripting

Number of days between the current date and user defined date

I am trying to find out the number of days between the current date and user defined date. I took reference from here for the date2jd() function. Modified the function according to my requirement. But its not working properly. Original code from here is working fine. #!/bin/sh... (1 Reply)
Discussion started by: hiten.r.chauhan
1 Replies

6. AIX

How to manipulate date format?

Hi, I need to convert the below string in 'yyyymmdd' format. e.g., 24 June 2011 -> 20110624 Please help !! (4 Replies)
Discussion started by: ruby
4 Replies

7. Shell Programming and Scripting

Subtract 2 date columns in .csv file and get output as number of days

Hi, I have one .csv file. I have 2 date columns present in file, column 2 and column 3. I need to calculate how many days exist between 2 dates. I am trying to subtract date column 2 from date column 3. Eg: my file look likes s.no, Start_date,End_Date 1, 7/29/2012,10/27/2012 2,... (9 Replies)
Discussion started by: Dimple
9 Replies

8. UNIX for Dummies Questions & Answers

Subtracting number of days from current date

Hi All, I am using KSH shell and need to subtract n number of days from the current date .. kindly suggest ! Thanks in advance!:) (20 Replies)
Discussion started by: dev.devil.1983
20 Replies

9. HP-UX

awk command in hp UNIX subtract 30 days automatically from current date without date illegal option

current date command runs well awk -v t="$(date +%Y-%m-%d)" -F "'" '$1 < t' myname.dat subtract 30 days fails awk -v t="$(date --date="-30days" +%Y-%m-%d)" -F "'" '$1 < t' myname.dat awk command in hp unix subtract 30 days automatically from current date without date illegal option error... (20 Replies)
Discussion started by: kmarcus
20 Replies

10. UNIX for Beginners Questions & Answers

Manipulate condition to send mail based on output text in file

Hi All, I have a working script as below. echo "Files loaded with $(cat /var/tmp/script.X1.out)" | mail -s "Files loaded with return code" mailid This script takes the output from script.X1.out file and appends the text "Files loaded with return code" and sends the email. Now what I want... (5 Replies)
Discussion started by: midhun3108
5 Replies
CHEWMAIL(1)						User Contributed Perl Documentation					       CHEWMAIL(1)

NAME
chewmail - mail archiver SYNOPSIS
chewmail [OPTIONS] <MAILBOX> ... DESCRIPTION
chewmail is a program for archiving mail. It is inspired by the by the Python-based archivemail, but with more useful semantics. All mail is archived to the mailbox specified with the --output-box switch, in mbox format. It can read mailboxes in mbox, Maildir and MH formats. Internally, chewmail uses Mail::Box, so it support file names and URLs supported by that module. OPTIONS
-o mailbox-format, --output-box=mailbox-format The mailbox to archive messages to. The mailbox is run through the Date::Format module, so it supports all it's conversion specifiers. The date and time is relative to the messages timestamp, or the current time if the timestamp is impossible to determine. A sample of the conversion specifiers follows: %% PERCENT %b month abbr %B month %d numeric day of the month, with leading zeros (eg 01..31) %e numeric day of the month, without leading zeros (eg 1..31) %D MM/DD/YY %G GPS week number (weeks since January 6, 1980) %h month abbr %H hour, 24 hour clock, leading 0's) %I hour, 12 hour clock, leading 0's) %j day of the year %k hour %l hour, 12 hour clock %L month number, starting with 1 %m month number, starting with 01 %n NEWLINE %o ornate day of month -- "1st", "2nd", "25th", etc. %t TAB %U week number, Sunday as first day of week %w day of the week, numerically, Sunday == 0 %W week number, Monday as first day of week %x date format: 11/19/94 %y year (2 digits) %Y year (4 digits) -d days-old, --days=days-old Only archive messages older than than this many days. -D date, --date=date Only archive messages old than this date. The date can be any date understood by Perl's Date::Parse module. -R, --only-read Only archive messages that are marked seen or read. --delete-immediately Synchonize the mailboxes after every message is moved. This will be substantially slower but may provide better recovery for some mail- box formats in the event of a crash. --preserve-timestamp Preserve the atime and mtime of the input mailbox. This only affects file-based mailboxes, such as mbox. -n, --dry-run Go through all the motions of archiving the mail, but don't actually change any mailboxes. -v, --verbose Output more informational messages. Use multiple times for more verbosity. -q, --quiet Don't output any messages other than error messages. -V, --version Print the version number then exit. -h, --help Print usage information then exit. EXAMPLES
Archive two day old messages in inbox to inbox-old: chewmail --days 2 -o inbox-old inbox Archive read messages to a mailbox named the year-month of the message: chewmail --only-read -o %Y-%m inbox SEE ALSO
archivemail(1), Date::Parse, Date::Format, Mail::Box AUTHOR
Eric Dorland <eric@kuroneko.ca> perl v5.8.8 2006-08-15 CHEWMAIL(1)
All times are GMT -4. The time now is 10:09 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy