When I execute the your code.. by passing date as 20150108. I am getting the error.
Illegal octal digit '8' at -e line 1, at end of line
Execution of -e aborted due to compilation errors.
Unrecognized switch: -86400 (-h will show valid options).
Code:
#!/bin/ksh
input_date=$1
in_yyyy="${input_date%????}" # Remove last four characters
in_dd="${input_date#??????}" # Remove lead four characters
in_mm="${input_date#????}" # Remove lead four characters
in_mm="${in_mm%??}" # Remove last two characters from previously split value
((temp_mm=$in_mm-1)) # Reduce month by one as epoch counts from 1/1/1970 as zero
# Get time in seconds since epoch
perl -e "use Time::Local; print timelocal(0,0,0,$in_dd,$temp_mm,$in_yyyy), ;" | read in_seconds
# Go back one day in seconds
((out_seconds=$in_seconds-86400))
# Display answer in required format
perl -e 'use POSIX qw(strftime);print scalar(strftime "%Y%m%d", localtime $ARGV[0]), "\n";' $out_seconds
Did some quick analysis. It is due to the month 01 (i.e Jan), the value of temp_mm will become 0.
After getting 10 infractions for failing to use CODE tags, your other account was made read-only again. You cannot use another account to get around the infractions. This account will be closed. This thread is closed.
This User Gave Thanks to Don Cragun For This Post:
I m working on shell scripting and I m stuck where in my .txt file there is column as expiry date and I need to compare that date with system date and need to remove all the rows where expiry date is less than system date and create a new .txt with update. (1 Reply)
Can someone help me with the code wherein there is a file f1.txt with different column and 34 column have expiry date and I need to get that and compare with system date and if expiry date is <system date remove those rows and other rows should be moved to new file f2.txt .
I don't want to delete... (2 Replies)
i try to set linux date & time in specific format but it keep giving me error
Example :
date "+%d-%m-%C%y %H:%M:%S" -d "19-01-2017 00:05:01"
or
date +"%d-%m-%C%y %H:%M:%S" -d "19-01-2017 00:05:01"
keep giving me this error :
date: invalid date ‘19-01-2017 00:05:01'
Please use CODE tags... (7 Replies)
I have file listed like below
-rw-r--r--+ 1 test test 17M Nov 26 14:43 test1.gz
-rw-r--r--+ 1 test test 0 Nov 26 14:44 test2.gz
-rw-r--r--+ 1 test test 0 Nov 27 10:41 test3.gz
-rw-r--r--+ 1 test test 244K Nov 27 10:41 test4.gz
-rw-r--r--+ 1 test test 17M Nov 27 10:41 test5.gz
I... (5 Replies)
Dear all,
I have 2 questions.
I have a file with many rows which has date of the format YYYYMMDD.
1. I need to change the date to that weeks friday date(Ex: 20120716(monday) to 20120720). Satuday/Sunday has to be changed to next week friday date too.
2. After converting the date to... (10 Replies)
Hi,
In a field, I should receive the date with time stamp in a particular field. But sometimes the vendor sends just the date or the timestamp or correctl the date×tamp. I have to figure out the the data is a date or time stamp or date×tamp.
If it is date then append "<space>00:00:00"... (1 Reply)
hi there
I have file names in different format as below
triss_20111117_fxcb.csv
triss_fxcb_20111117.csv
xpnl_hypo_reu_miplvdone_11172011.csv
xpnl_hypo_reu_miplvdone_11-17-2011.csv
xpnl_hypo_reu_miplvdone_20111117.csv
xpnl_hypo_reu_miplvdone_20111117xfb.csv... (10 Replies)
Hello gurus,
I am hoping someone can help me with the required code/script to make this work. I have the following file with records starting at line 4:
NETW~US60~000000000013220694~002~~IT~USD~2.24~20110201~99991231~01~01~20101104~... (4 Replies)
Hi all,
I've used various scripts in the past to work out the date last week from the current date, however I now have a need to work out the date 1 week from a given date.
So for example, if I have a date of the 23rd July 2010, I would like a script that can work out that one week back was... (4 Replies)
Assume, I created one file three years back and I like to move the file to some other directory with the old date (Creation date)? Is it possible? Explain? (1 Reply)