You haven't told us what OS you're using and you haven't told us what shell you're using. If you had the GNU date utility, you could use date -d in a shell script (but you have said that is not an option). If you have a recent version of ksh, you could use:
currently producing the output:
Of course, it is easy just using a standard date utility, parameter expansions, and arithmetic expansions to get the current date, extract the current day of the month, add the desired number of days you want to go forward and reformat the day of the month in the date output you want as long as the resulting day number is no greater than 28.
Otherwise, if you're unwilling to use perl, you can use date to get the current date and build calendar logic into your shell script, or use date to get the current date and process output from cal to find the date x days later (or earlier).
The perl script i use is as below and works fine but i guess im just being curious as to whether there was an easier way in shell without using GNU date or perl
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)
Hi,
One of my Unix scripts needs to look for files coming in on Fridays. This script runs on Mondays. $date +"%y%m%d" will give me today's date. How can I get previous Friday's date.. can I do "today's date minus 3 days" to get Friday's date? If not, then any other way?? Name of the files is... (4 Replies)
Hi! I am trying to read a file and every line has a specific date as one of its fields.
I want to take that date and compare it to the date today plus 6 days.
while read line
do
date=substr($line, $datepos, 8) #date is expected to be YYYYMMDD
if ; then
...proceed commands
... (1 Reply)
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)
Hi,
I'm writing an batch file to create report
In the batch file iam passing two arguments:startdate and finishdate
Ex: startdate=07-sep-2009 finishdate=07-sep-2011
I need to have script that takes command line argument as input and gives me out currentdate last year and current date... (2 Replies)
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)
Hello Unix gurus,
I need to add days to the input date and further use it in comparision with the existing date.
Im having issues sto add days to date,can you guys help me with script or function with which I can add days to the date.
Thanks,
Sud (10 Replies)
how can we add or subtract days from the output of date command in unix...
like if i want to subtract a day from the result of date command like this..
v_date=`date +%Y%m%d`
this wud give me 20080519
now i want to subtract one day from this.. so tht it wud give me 20080518..
how do i do... (1 Reply)