Check how many minutes ago the last file created


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Check how many minutes ago the last file created
# 1  
Old 04-09-2014
Check how many minutes ago the last file created

Hi ,

I need help in getting how many minutes ago the last file, matching some pattern in file name, was created in a folder.

Thanks in advance.
# 2  
Old 04-09-2014
Can you provide a sample of the input and the desired output...
# 3  
Old 04-09-2014
Quote:
Originally Posted by shamrock
Can you provide a sample of the input and the desired output...
Here it is.

sample input
Code:
FILE_PATTERN="^Test"
FOLDER="/nas/testfolder"

Output:
Code:
5

So it will search latest file starting with the name "Test" in the folder "/nas/testfolder" and will return how many minutes ago the file was created. In case it was created 5 minutes ago, then it will give output as 5.
# 4  
Old 04-09-2014
Try this:

Code:
ls -al | awk '$NF ~ /pattern/ {print $7,$8,$9}' | sort -rM | head -1

Long list of all files in the current directory showing hidden files. Pipe to awk. If the last field (the file names) matches the pattern "pattern", print the 7th, 8th, and 9th field. Then sort by month in reverse order. Head the first thing in the list

Edit: Replace "ls -al" with "ls -al /directory/you/want" to look at files in the directory you want.

Edit 2: Sorry this doesn't quite answer your question. Let me see if I can find out how to take the difference between dates in bash...
This User Gave Thanks to blakeoft For This Post:
# 5  
Old 04-09-2014
No Problems. Thank you for trying anyway.
# 6  
Old 04-09-2014
Code:
find /home/user/log -type f -name "*.log" | xargs vdir --time-style="+%s" | awk -v d="$(date +%s)" '{printf "%s\t%d\n", $7, (d - $6)/60}'

You know what to change Smilie
directory & file pattern in find command
This User Gave Thanks to SriniShoo For This Post:
# 7  
Old 04-09-2014
I think I have a fix for my code above. Try this:
Code:
FOLDER="/nas/testfolder"
FILE=$(ls -alt ${FOLDER} | awk '$NF ~ /^Test/ {print $NF}' | head -1)
FILE_TIME=$(date --reference=$FOLDER/$FILE +%s)
NOW_TIME=$(date +%s) ; echo $((($NOW_TIME-$FILE_TIME)/60))

FOLDER is the folder that you want to look in.

FILE is the most recent file matching your pattern: Long list all files in FOLDER and sort by time. Pipe to awk. Print the last field with files that match the pattern "^Test". Pipe to head. Print the first entry.

FILE_TIME is the number of seconds past a universal date that I don't recall.

NOW_TIME is the number of seconds past that date until now.

Then print the difference of the two times divided by 60.

Note that my code might not work properly if no file matches the pattern.
This User Gave Thanks to blakeoft For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

rsync a file as it gets created and after 3 minutes old

- run a backup job - The jobs creates partial files one after the other, about 2 minutes interval. What i want to do is that while the job is still running or while a file was last modified or created 3 minutes ago, the file should be rsync to a remote server untill the last file has been... (4 Replies)
Discussion started by: malaika
4 Replies

2. UNIX for Beginners Questions & Answers

Find if create time of last created file in a directory is older than 5 minutes

A process xyz is running and creating file1, file2, file3, .... filen. how do i know if the process has stopped and createtime of the last file (filen) is older than 5 minutes? OS is AIX (3 Replies)
Discussion started by: malaika
3 Replies

3. Shell Programming and Scripting

Check file creation Time minutes and if file older then 5 minutes execute some stuff

Hello all, Info: System RedHat 7.5 I need to create a script that based on the creation time, if the file is older then 5 minutes then execute some stuff, if not exit. I thought to get the creation time and minutes like this. CreationTime=$(stat -c %y /tmp/test.log | awk -F" " '{ print... (3 Replies)
Discussion started by: charli1
3 Replies

4. Shell Programming and Scripting

How to send a file in UNIX through email which is created only 15 minutes before the current time?

I wanted to send an email to the client whenever there is failed record created in a /feed/HR-76/failed folder after processing of feed file. I can find out with the help of below script that what is the new file created but that file didn't make just 15 minutes before. ... (1 Reply)
Discussion started by: puneetkhullar
1 Replies

5. Shell Programming and Scripting

python test datetime 30 minutes ago

Hello, RHEL5.5 PYTHON=2.4.3 I have 2 python variables using the datetime module. Here is how I call them: print "Current Time: %s" % now print "LastDownloadTime: %s" % LastDownloadTime Here is an example of an issue. Current Time: 2012-01-05 14:06:09.749240... (2 Replies)
Discussion started by: jaysunn
2 Replies

6. Shell Programming and Scripting

Find unix file created how many days ago?

i want to find unix file created how many days ago? (4 Replies)
Discussion started by: utoptas
4 Replies

7. Shell Programming and Scripting

How can i search a file which has been created or modified in last five minutes

Hi Can some one please help me How can i search a file which has been created or modified in last five minutes I have used the command find . -mmin -5 and it does not work i get an error -mmin is bad option Please help Much regards Tarun (2 Replies)
Discussion started by: tarundeepdhawan
2 Replies

8. UNIX for Dummies Questions & Answers

file was created before 15 days ago.

How can I get difference date between today and 15 days ago and all filename is was created before 15 days ago? It has to be korn shell script. Thanks. (1 Reply)
Discussion started by: YoungBlood
1 Replies
Login or Register to Ask a Question