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:
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:
This User Gave Thanks to Don Cragun For This Post:
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:
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)