05-02-2008
Calender Unix programming date issues
Hi, i;m beginner of Unix, i trying to use crontab to zip my log file automatically, below is my coding, some of the statement i don't know whether is correct or not. Pls help
year=`date '+%Y'`
month=`date '+%m'`
day=`date '+%d'`
day=`expr $day - 1`
case $month in
1 | 3 | 5 | 7 | 8 | 9 | 10 | 12);;
if [ $day = 0 ]; then
day=32
day1=$day-1
fi
4 | 6 | 11);;
if [ $day = 0 ]; then
day=31
day1=$day-1'
fi
2);;
if [ $month Mod 4 =0]; then
if[ $day = 0 ]; then
day = 30
day1 =%day-1
fi
else
if[ $day = 0 ]; then
day = 29
day1 =$day-1'
fi
fi
*) echo error: too many arguments 1>&2 ;;
esac
DATE=$year$month$day1
mv $HOME/*$DATE*log $HOME/archive
cd $HOME/archive
gzip *
Last edited by dannyd_y; 05-02-2008 at 06:03 AM..
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Several months ago I found a link that explained the difference between how a Unix Systems Admin would do scripting compared to what a Unix Programmer would do.
It showed a basic script and then show several iterations that explained how the Systems Admin would change it to make it better. I was... (0 Replies)
Discussion started by: BCarlson
0 Replies
2. Shell Programming and Scripting
Hi,
I have script in unix which creates a julian date like 126 or 127
I want convert this julian date into calender date
ex : input 127
output 07/may/2007 or 07/05/2007 or 07/05/07
rgds
srikanth (6 Replies)
Discussion started by: srikanthus2002
6 Replies
3. UNIX for Dummies Questions & Answers
Hi,
I am facing a weird problem with the 'Date'. If I check date multiple times in a short interval I see a different time altogether. Here is an example
$ date
Tue Jul 15 02:07:22 PDT 2008
$ date
Tue Jul 15 02:07:23 PDT 2008
$ date
Tue Jul 15 03:20:42 PDT 2008
$ date
Tue Jul 15... (5 Replies)
Discussion started by: sumitb74
5 Replies
4. UNIX for Dummies Questions & Answers
Hello,
I am trying to learn Networking Programming in C in unix enviorment. I want to know how good it is to become a network programmer. i am crazy about Network programming but i also want to opt for the best carreer options. Anybody experienced Network Programmer, please tell me is my... (5 Replies)
Discussion started by: vibhory2j
5 Replies
5. UNIX for Dummies Questions & Answers
I'm having trouble running this script. I'm new to Unix so be kind please.
#!/bin/sh
# Test to make sure only a single parameter is passed from the
# command line.
if
then
echo "Usage: AC.sh <directory>"
exit
fi
# Is the parameter a directory test
if
then
echo... (3 Replies)
Discussion started by: FSUdude08
3 Replies
6. UNIX for Dummies Questions & Answers
Doubt #1
I have a program that I want the user to input date. When the user inputs the date, is it able to format it to system date dd-mm-yyy and then echo the value into a text file?
Doubt#2
If the above is not going to work, I tried to have the system date appear in the user input field and... (6 Replies)
Discussion started by: frossie
6 Replies
7. UNIX for Dummies Questions & Answers
How does unix system administration, unix programming, unix network programming differ?
Please help. (0 Replies)
Discussion started by: thulasidharan2k
0 Replies
8. Shell Programming and Scripting
Hi
I am trying to schedule a job through Autosys through UNIX on a particular day of every month (for example 20th of every month). Can some one please help me whats the command or whats the process to run on that particular day of month.
Thank you, (2 Replies)
Discussion started by: sravuri
2 Replies
9. Shell Programming and Scripting
Hello All,
This is my first script in PERL. Hence require your help in moving further.
I have a script which should populate the values for Today, Yesterday output.
For which I use timeFrame as a variable to obtain the time in hrs:mm as 10:00.
All I want is, I want my timeFrame to start... (4 Replies)
Discussion started by: sathyaonnuix
4 Replies
10. Shell Programming and Scripting
I would like to get the below in YYYY MMDD format,
Last date of the week
Last date of the month
Last date of the year
And then compare d_date with the above if it matches it has to send some email.
while read email_address; do
mail -s "$subject"... (1 Reply)
Discussion started by: Aditya_001
1 Replies
IDATE(3) 1 IDATE(3)
idate - Format a local time/date as integer
SYNOPSIS
int idate (string $format, [int $timestamp = time()])
DESCRIPTION
Returns a number formatted according to the given format string using the given integer $timestamp or the current local time if no time-
stamp is given. In other words, $timestamp is optional and defaults to the value of time(3).
Unlike the function date(3), idate(3) accepts just one char in the $format parameter.
PARAMETERS
o $format
-
The following characters are recognized in the $format parameter string
+------------------+---------------------------------------------------+
|$format character | |
| | |
| | Description |
| | |
+------------------+---------------------------------------------------+
| | |
| B | |
| | |
| | Swatch Beat/Internet Time |
| | |
| | |
| d | |
| | |
| | Day of the month |
| | |
| | |
| h | |
| | |
| | Hour (12 hour format) |
| | |
| | |
| H | |
| | |
| | Hour (24 hour format) |
| | |
| | |
| i | |
| | |
| | Minutes |
| | |
| | |
| I (uppercase i) | |
| | |
| | returns 1 if DST is activated, 0 otherwise |
| | |
| | |
| L (uppercase l) | |
| | |
| | returns 1 for leap year, 0 otherwise |
| | |
| | |
| m | |
| | |
| | Month number |
| | |
| | |
| s | |
| | |
| | Seconds |
| | |
| | |
| t | |
| | |
| | Days in current month |
| | |
| | |
| U | |
| | |
| | Seconds since the Unix Epoch - January 1 1970 |
| | 00:00:00 UTC - this is the same as time(3) |
| | |
| | |
| w | |
| | |
| | Day of the week ( 0 on Sunday) |
| | |
| | |
| W | |
| | |
| | ISO-8601 week number of year, weeks starting on |
| | Monday |
| | |
| | |
| y | |
| | |
| | Year (1 or 2 digits - check note below) |
| | |
| | |
| Y | |
| | |
| | Year (4 digits) |
| | |
| | |
| z | |
| | |
| | Day of the year |
| | |
| | |
| Z | |
| | |
| | Timezone offset in seconds |
| | |
+------------------+---------------------------------------------------+
o $timestamp
- The optional $timestamp parameter is an integer Unix timestamp that defaults to the current local time if a $timestamp is not
given. In other words, it defaults to the value of time(3).
RETURN VALUES
Returns an integer.
As idate(3) always returns an integer and as they can't start with a "0", idate(3) may return fewer digits than you would expect. See the
example below.
ERRORS
/EXCEPTIONS
Every call to a date/time function will generate a E_NOTICE if the time zone is not valid, and/or a E_STRICT or E_WARNING message if using
the system settings or the $TZ environment variable. See also date_default_timezone_set(3)
CHANGELOG
+--------+---------------------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+---------------------------------------------------+
| 5.1.0 | |
| | |
| | Now issues the E_STRICT and E_NOTICE time zone |
| | errors. |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
idate(3) example
<?php
$timestamp = strtotime('1st January 2004'); //1072915200
// this prints the year in a two digit format
// however, as this would start with a "0", it
// only prints "4"
echo idate('y', $timestamp);
?>
SEE ALSO
date(3), getdate(3), time(3).
PHP Documentation Group IDATE(3)