Deleting dated log files whihc are older than an year


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Deleting dated log files whihc are older than an year
# 8  
Old 10-20-2015
Quote:
Originally Posted by nanz143
sorry.. i did not understand this..
.
.
.
Why don't you give it a try (by just printing the resulting file names)? It will make find search only the uppermost directory.
This User Gave Thanks to RudiC For This Post:
# 9  
Old 10-20-2015
As I said before, use the for loop in the shell if you want to use the date in the filename to determine which files are a year old and use find if you want to use the last modification time of the file to determine which files are a year old.

The shell for loop I provided only looks at files in the current directory. If you want to use find and only want to look at files in the current directory, you could try what RudiC suggested:
Code:
find Ft*.*.log -mtime +364 -exec echo rm {} +

but, if there are LOTS of files matching that pattern, you might fail with an E2BIG error. And, if there are subdirectories in the current directory that have the same filename format as the log files you want to process, it will search those directories for log files to process. If either of these things is a problem you can avoid both of them with:
Code:
find . \( -type d ! -name "." -prune \) -o  -name 'Ft*.*.log' -mtime +364 -exec echo rm {} +

This User Gave Thanks to Don Cragun For This Post:
# 10  
Old 10-22-2015
Don,
Apologize for the delayed response, struck in another issue.
The KSH ran as expected for me. Thanks a lot SmilieSmilie..

And may be this is very basic to ask... just want to know about this command.

Code:
EDD=$(($(date +%Y%m%d) - 10000))

how did we arrive at 10000. wanted to learn this calculation, as in case if i need to modify this script to look for files before a month or so.

Thanks in advance !!!
# 11  
Old 10-22-2015
Code:
date +%Y%m%d
20151022

is just a number. Subtracting 10000 will result in a number representing one year ago. (May fail on certain dates, e.g. 29. Feb.)
This User Gave Thanks to RudiC For This Post:
# 12  
Old 10-22-2015
Thanks Rudi..

Got the logic.. Thanks Again Rudi..

Last edited by nanz143; 10-22-2015 at 11:41 AM.. Reason: Got the logic..
# 13  
Old 10-22-2015
Quote:
Originally Posted by RudiC
Code:
date +%Y%m%d
20151022

is just a number. Subtracting 10000 will result in a number representing one year ago. (May fail on certain dates, e.g. 29. Feb.)
I wasn't trying to create a valid date a year ago; I was just looking for a number representing a year ago that we can compare to a number representing some other arbitrary date. Except for leap days, the number produced is a valid representation of the number produced in the same way for the date exactly one year ago.

And, when run on a leap day, it will still yield a value that can be compared against a valid date string approximately one year ago and get reasonable results from a numeric comparison. The numeric representation of March 1 of the previous year will be greater than the numeric representation of February 29th a year ago even though there was no February 29 a year ago. And the numeric representation of February 28 of the previous year will still be less than the representation of February 29th a year ago even though there was no February 29 a year ago.
This User Gave Thanks to Don Cragun For This Post:
# 14  
Old 10-23-2015
Thank you Don..Understood.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need help deleting files one week older

Hi, I need to delete *.bad files which are 1 week old. How can I achieve that. I tried doing through below script but it deletes all the files. find ./ -mtime +7 -exec rm *.bad {} \; The below one works but i want to delete only files with .bad extension find . -mtime +7 | xargs rm (2 Replies)
Discussion started by: Gangadhar Reddy
2 Replies

2. Shell Programming and Scripting

Deleting Files Older than 1 hours.

How to Deleting Files Older than 1 hours. Base on SunOS. this file gen every 1 min. -rw-r--r-- 1 nobody nobody 4960 Jan 27 02:02 23_201301270201.log -rw-r--r-- 1 nobody amudu 2325 Jan 27 02:03 33_201301270202.log -rw-r--r-- 1 nobody amudu 3255 Jan 27 02:03... (2 Replies)
Discussion started by: ooilinlove
2 Replies

3. Shell Programming and Scripting

Delete files older than 1 year through FTP

Hi All, I want to login to a remote server using FTP command and then check for files older than 1 year and delete those files. Please let me know how can i achieve this using Unix Commands. Thanks in Advance, (10 Replies)
Discussion started by: HemaV
10 Replies

4. Shell Programming and Scripting

Deleting files older than 6 hours

Hi All, I am using the below script to find all the files in a folder which are older than 6 hours and delete all those files, but some how I am not getting the required output. find $HOME/Log -type f -name "*.log" -amin +360 -exec rm *.* {} \ can any one please check and let me know... (13 Replies)
Discussion started by: subhasri_2020
13 Replies

5. Shell Programming and Scripting

deleting files older than 7 days

Hi Guys, I am new to unix I am looking for a script to delete files older than 7 days but i also want to exclude certain directories (like arch,log .....) and also some files with extensions ( like .ksh, .ch, ..............) Thanks (1 Reply)
Discussion started by: MAYAMAYA0451
1 Replies

6. UNIX for Advanced & Expert Users

Deleting older files of a particular type

hi This should be easy but i'm obviously missing something obvious. :) I'm looking to delete files from yesterday and older of extension .txt and there a range of subfolders with these files in them. The command runs but doesn't delete anything. SUSE 10. find /testfolder -maxdepth 2 -type f... (6 Replies)
Discussion started by: cmap
6 Replies

7. UNIX for Dummies Questions & Answers

Deleting specfic files older than N days

Hello, I am trying to delete specific files older than 7 days that start with FSTRnnnn (nnnn=sequnce number) from /home/users/userdir I.E cd home/users/userdir ll FSTR0001 Jul 8 14:20 FSTR0002 Jul 6 12:01 FSTR0003 May 25 09:45 FSTR0004 April 2 17:20 MSTR0034 Jul 6 12:45... (3 Replies)
Discussion started by: eurouno
3 Replies

8. Shell Programming and Scripting

Deleting files older than 7 days

Hi Guys, I want to delete folder/files older than 7 days. Im using the command below. find /test/test1 -mtime +7 -print0 | xargs -0 rm -Rf /test/test1/* which works ok, but it deletes the test1 folder as well which i dont want. The test1 folder will have a list of sub-folders which in... (4 Replies)
Discussion started by: shezam
4 Replies

9. Solaris

Deleting Files Older than 24 hours

Hi, I am using Solaris Box, I need to delete file(cookies.html) from the path(/usr/temp) which are older than 24 hours(I want in hours, not in days) Can u provide the command for the above query (7 Replies)
Discussion started by: mazhar803
7 Replies

10. Shell Programming and Scripting

Deleting files older than a given date

Hi all, I want to delete all files in a directory which are older than a given date. I thought of doing it by creating a file by the required date by using touch command. And then i would use find command on that file and try to find files older than that. I searched the man and found a... (3 Replies)
Discussion started by: rajugp1
3 Replies
Login or Register to Ask a Question