10-16-2008
epoch date solution to file age problem
As normal dating use minutes, hours, days - that are reset after they reach some low maximum values, and as different months may have different number of days, it may be tricky to implement time difference calculation using normal dating. Instead a solution using the total number of seconds since a fixed date is simple and straight-forward. The Unix epoch time starts at new years moment 1970 and counts the number of seconds since then. The age of a file in seconds is then
EpochTime(now) - EpochTime(file). The shell script below uses modification time from date +%s -r referring to a file:
#Present time in Epoch Time measured
nowEpTime=`date +%s`
#Modification time of file in Epoch Time units.
filemodifEpTime=`date +%s -r $fil`
#Age in seconds
filageSeconds=$(($nowEpTime-$filemodifEpTime))
#In minutes
tdiff=$(($filageSeconds/60))
echo $tdiff
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi,
I want to know my file is 1 hr 30 min old or not,
If 1 hr 30 min old I will do some tasks in that file.. other wise I will wait to 1 hr 30 min and then do the tasks.. how to do it in Unix script? any idea? (3 Replies)
Discussion started by: redlotus72
3 Replies
2. Shell Programming and Scripting
KSH:
Please lt me know how to find the age of a file in minutes(Based on last modified time).
ie, if the file was modified 15 Minutes ago, the output should be 15 (1 Reply)
Discussion started by: hari_anj
1 Replies
3. Shell Programming and Scripting
Hi,
(AIX 5.1)
Is there any way to find the epoch timestamp for a file without having to use fancy perl (or similar) scripts? If anyone knows of a way to do this using just ksh commands it would be appreciated.
(It also appears I don't have the stat command available).
Alternatively is... (3 Replies)
Discussion started by: b0bbins
3 Replies
4. Shell Programming and Scripting
Hi all,
I'm using SunOS.
need to find age of the file in terms of seconds. The file
name with its path will be given to the script as input.
Any kinda help will be appreciated.
Thanks in advance (7 Replies)
Discussion started by: bankimmehta
7 Replies
5. Shell Programming and Scripting
Hi
I can not say that i am new to perl but today i learned something new, i wanted to know age (last time file got modified) of file so i initially thought of using find -mtime command but when i googled it, i found perl solution for the same
my $age = -M $ARGV ;
print "$ARGV age is... (1 Reply)
Discussion started by: zedex
1 Replies
6. Shell Programming and Scripting
I am using AIX 6.1 and would like to use a one line command to determine the age of a file in days. I would like to look at a specific file.
I would like to use the command to run on a remote server (AIX 6.1) to return the age of a specific file in days. So if the file is 42 days old I would... (2 Replies)
Discussion started by: oldman2
2 Replies
7. Shell Programming and Scripting
Hello,
I'm trying to create a shell script (#!/bin/sh) which should tell me the age of a file in minutes...
I have a process, which delivers me all 15 minutes a new file and I want to have a monitoring script, which sends me an email, if the present file is older than 20 minutes.
To do... (10 Replies)
Discussion started by: worm
10 Replies
8. Shell Programming and Scripting
Hello all,
Below is scripts to find the file following by:
30 days <- How many total file space within 30 days and not quantity
90 days
120 days
1 year
From here also I can get data space to put on PIE Chart. Following this scripts can I do some enhance from this scripts like do... (1 Reply)
Discussion started by: sheikh76
1 Replies
9. Shell Programming and Scripting
hi,
i am working on a shell script where i have 2 files & i need to check age of those files. one file should be of the same day and other shoudn't be more then 20 days old.
how could i acheive this? please help!!!! (10 Replies)
Discussion started by: lovelysethii
10 Replies
10. UNIX for Dummies Questions & Answers
Hi All..
Is there any easy way to find out how many days older is file?
for ex. fileA 20 days
fileB 10 days
I am currently on AIX, and there is no STAT command available in this environment. What are my options?
Thanks
Abhijeet R (1 Reply)
Discussion started by: freakabhi
1 Replies
TIME(2) Linux Programmer's Manual TIME(2)
NAME
time - get time in seconds
SYNOPSIS
#include <time.h>
time_t time(time_t *t);
DESCRIPTION
time returns the time since the Epoch (00:00:00 UTC, January 1, 1970), measured in seconds.
If t is non-NULL, the return value is also stored in the memory pointed to by t.
RETURN VALUE
On success, the value of time in seconds since the Epoch is returned. On error, ((time_t)-1) is returned, and errno is set appropriately.
ERRORS
EFAULT t points outside your accessible address space.
NOTES
POSIX.1 defines seconds since the Epoch as a value to be interpreted as the number of seconds between a specified time and the Epoch,
according to a formula for conversion from UTC equivalent to conversion on the naive basis that leap seconds are ignored and all years
divisible by 4 are leap years. This value is not the same as the actual number of seconds between the time and the Epoch, because of leap
seconds and because clocks are not required to be synchronised to a standard reference. The intention is that the interpretation of sec-
onds since the Epoch values be consistent; see POSIX.1 Annex B 2.2.2 for further rationale.
CONFORMING TO
SVr4, SVID, POSIX, X/OPEN, BSD 4.3
Under BSD 4.3, this call is obsoleted by gettimeofday(2). POSIX does not specify any error conditions.
SEE ALSO
ctime(3), date(1), ftime(3), gettimeofday(2)
Linux 2.0.30 1997-09-09 TIME(2)