04-05-2007
Quote:
Originally Posted by kumarsaravana_s
#!/bin/ksh
monthname()
{
case $1 in
01) _MONTH=Jan ;; 02) _MONTH=Feb ;;
03) _MONTH=Mar ;; 04) _MONTH=Apr ;;
05) _MONTH=May ;; 06) _MONTH=Jun ;;
07) _MONTH=Jul ;; 08) _MONTH=Aug ;;
09) _MONTH=Sep ;; 10) _MONTH=Oct ;;
11) _MONTH=Nov ;; 12) _MONTH=Dec ;;
esac
}
six2date()
{
temp=${1%??}
year=$(( ${1#"$temp"} + 2000 ))
monthname "${temp%??}"
day=${temp#??}
_DATE=$_MONTH-$day-$year
}
eight2date()
{
temp=${1%????}
year=$((${1#"$temp"}))
monthname "${temp%??}"
day=${temp#??}
_DATE=$_MONTH-$day-$year
}
fourteen2date()
{
temp1=${1#????}
year=${1%"$temp1"}
temp2=${temp1#??}
monthname ${temp1%"$temp2"}
temp3=${temp2##??}
day=${temp2%"$temp3"}
_DATE=$_MONTH-$day-$year
}
cd /tmp/ss/test
for file in *
do
suffix=${file##*.}
name=${file%_*}
temp=${file%."$suffix"}
date=${temp#"$name"_}
case ${#date} in
6) six2date ${date} ;;
8) eight2date ${date} ;;
14) fourteen2date ${date} ;;
esac
newfile=${name}_$_DATE.$suffix
mv "$file" "$newfile"
done
Kumar
I have this code which works for files of the date format of MMDDYY,YYYYMMDDHHMMSS and MMDDYYYY.
I have two new files,of the date format YYMMDD and MMDDYYYY(i think it is MMDDYYHHMM,i'm not sure of the HHMMSS combination)
aa_id_da_070404.txt and am_dt_bc_040420070010.txt..
How to incorporate these dates into the above code..??
Thanks for your help..
Regards,
Kumar
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
#Author : kkodava
#!/usr/bin/ksh
#Use of this program is You can findout the no of days & day of starting and ending dates
#usage no_of_days startdate<yyyymmdd> enddate<yyyymmdd>
syy=`echo $1|cut -c1-4`
smm=`echo $1|cut -c5-6`
sdd=`echo $1|cut -c7-8`
eyy=`echo $2|cut -c1-4`
emm=`echo... (1 Reply)
Discussion started by: krishna
1 Replies
2. Programming
How to print current date of the Unix system accessing thru C++ program ?
I wrote like this
#include <time.h>
.......
time_t tt;
struct tm *tod;
....
time(&tt);
tod = localtime(&tt);
cout << tod->tm_mon + 1 << "/"
<< tod->tm_mday << "/"
... (6 Replies)
Discussion started by: ls1429
6 Replies
3. Programming
hi all:
i want to store the current date in to a file from a program.
every time i execute the prg the date should get appended into the file.
help me plz (2 Replies)
Discussion started by: bankpro
2 Replies
4. UNIX for Advanced & Expert Users
Hey Guyz I have a requirement something like this..
a part of file name, date of modification of that file and a text is entered as input.
like
Date : 080206 (MMDDYY format.)
filename : hotel_rates
text : Jim
now the file hotel_rates.ZZZ.123 (creation date is Aug 02 2006) should be... (10 Replies)
Discussion started by: rosh0623
10 Replies
5. Programming
Hi
One of my vendor based tool is giving date in
no. of days since 1900-01-01.
So, I want to display in CCYYMMDD format.
For ex:- Vendor based tool is giving as 38790 days since 1900-01-01
corresponding to12/sep/2006
Does anybody has the... (1 Reply)
Discussion started by: axes
1 Replies
6. UNIX for Dummies Questions & Answers
Hi,
i want to write a script that executes a program (exec?) .
this program then requires a filename as input.
how do i give it this input in the script so the program will be complete run and close by the script.
e.g.
exec prog.exe
program then asks for filename
"enter filename:"... (1 Reply)
Discussion started by: tuathan
1 Replies
7. UNIX for Dummies Questions & Answers
Hi Guys,
Good morning! I have a file which looks something like this:
Command was launched from partition 0.
------------------------------------------------
Executing command in server server3
Thu Jan 12 11:10:39 EET 2012
------------------------------------------------... (3 Replies)
Discussion started by: rymnd_12345
3 Replies
8. Solaris
is it possible to use output of one date command as input of another?
I would like to know the date of Monday two weeks ago. so, the idea is that one date command subtracts two weeks, and the other finds the Monday. (2 Replies)
Discussion started by: orange47
2 Replies
9. Shell Programming and Scripting
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)
Discussion started by: 2001.arun
10 Replies
10. UNIX for Beginners Questions & Answers
I work at a company that uses a program written in AWK to track various data and prepare reports. Worked with this program for three years plus (the author is no longer with us) and the YTD Production report will not return a report with a date after 123119. This is a problem. Below is the (I... (3 Replies)
Discussion started by: paulgdavitt
3 Replies
LEARN ABOUT PHP
datetime.setdate
DATETIME.SETDATE(3) 1 DATETIME.SETDATE(3)
DateTime::setDate - Sets the date
Object oriented style
SYNOPSIS
public DateTime DateTime::setDate (int $year, int $month, int $day)
DESCRIPTION
Procedural style
DateTime date_date_set (DateTime $object, int $year, int $month, int $day)
Resets the current date of the DateTime object to a different date.
PARAMETERS
o $object
-Procedural style only: A DateTime object returned by date_create(3). The function modifies this object.
o $year
- Year of the date.
o $month
- Month of the date.
o $day
- Day of the date.
RETURN VALUES
Returns the DateTime object for method chaining or FALSE on failure.
CHANGELOG
+--------+---------------------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+---------------------------------------------------+
| 5.3.0 | |
| | |
| | Changed the return value on success from NULL to |
| | DateTime. |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
DateTime.setDate(3) example
Object oriented style
<?php
$date = new DateTime();
$date->setDate(2001, 2, 3);
echo $date->format('Y-m-d');
?>
Procedural style
<?php
$date = date_create();
date_date_set($date, 2001, 2, 3);
echo date_format($date, 'Y-m-d');
?>
The above examples will output:
2001-02-03
Example #2
Values exceeding ranges are added to their parent values
<?php
$date = new DateTime();
$date->setDate(2001, 2, 28);
echo $date->format('Y-m-d') . "
";
$date->setDate(2001, 2, 29);
echo $date->format('Y-m-d') . "
";
$date->setDate(2001, 14, 3);
echo $date->format('Y-m-d') . "
";
?>
The above example will output:
2001-02-28
2001-03-01
2002-02-03
SEE ALSO
DateTime.setISODate(3), DateTime.setTime(3).
PHP Documentation Group DATETIME.SETDATE(3)