12-03-2011
The -mtime flag on the find command refers to the last modification time of a file as it is examined. So, -mtime +30 will be true if the file's modification time is more than 30 days old. There is one subtle 'feature' that most people do not realise. Using n days means from the current time. So if the command is being run at noon local time, files will show up meeting the criteria based on noon, not a 24 hour clock starting at midnight.
When using find to identify files by age, I prefer to touch a file with a specific time stamp (see the touch man page for details). Then I run find to identify any files that are older than the given 'marker' file. This allows me to specify a specific date and not worry about current time or the number of days in the month if I want to delete based on month boundaries.
Hope this helps.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I need to find files that have the ending of .out and that are older than 20 days. However, I cannot use find as I do not want to search in the directories that are underneath the directory that I am searching in.
How can this be done?? Find returns files that I do not want. (2 Replies)
Discussion started by: halo98
2 Replies
2. Solaris
Hello,
I need help in finding files older than x days and creating a single consolidated tar file combining them. Can anyone please provide me a script?
Thanks,
Dawn (3 Replies)
Discussion started by: Dawn Bosch
3 Replies
3. Red Hat
Hi,
I have dummies questions:
My script here can find the files in any directories older than 30 days then it will delete the files but not the directories. I would like to also be able to delete the directories that hold old files more than 30 days not just the files itself.
find . -type f... (2 Replies)
Discussion started by: lamoul
2 Replies
4. Shell Programming and Scripting
Dear Friends,
I have two queries.
1) I want to see the list of folders which were created 29 days ago.
2) I want to see the folders in which last created file is older than 29 days.
Can it be done?
Thank you in advance
Anushree (4 Replies)
Discussion started by: anushree.a
4 Replies
5. UNIX Desktop Questions & Answers
What command arguments I can use in unix to list files older than 10 days in my current directory, but I don't want to list the hidden files.
find . -type f -mtime +15 -print will work but, it is listing all the hidden files., which I don't want. (4 Replies)
Discussion started by: Pouchie1
4 Replies
6. UNIX for Advanced & Expert Users
Hello,
I have a script which finds files in a directory that are older than 30 days and remove them.
The problem is that these files are too many and when i run this command:
find * -mtime +30 | xargs rm
I run this command inside the directory and it returns the error:
/usr/bin/find:... (8 Replies)
Discussion started by: omonoiatis9
8 Replies
7. UNIX for Dummies Questions & Answers
Hi All,
I know the separate commands for finding files greater than 30 days and finding files greater than 1GB.
How do I combine these two commands?
Meaning how do I find files which are > 1GB and older than 30 days?
;) (4 Replies)
Discussion started by: Hangman2
4 Replies
8. Shell Programming and Scripting
Hi Guru's,
I am working on a shell script from past a month and unable to get rid of automating while working with dates,here's what i have.
inital_date=11012011
final_date=11302011
expected_output= has to be in below format PFB
11012011
11022011
11032011
*
*
*
11102011
*
*... (9 Replies)
Discussion started by: Gaurav198
9 Replies
9. Shell Programming and Scripting
Hi
I'm trying to writte a script (crontab) to copy files from one location to another... this is what i have:
find . -name "VPN_CALLRECORD_20130422*" | xargs cp "{}" /home/sysadm/patrick_temp/
but that is not working this is the ouput:
cp: Target... (5 Replies)
Discussion started by: patricio181
5 Replies
10. UNIX for Dummies Questions & Answers
Hi All,
Problem Statement:Find all log files under all file systems older than 2 days and zip them. Find all zip files older than 3days and remove them. Also this has to be set under cron.
I have a concerns here
find . -mtime +2 -iname "*.log" -exec gzip {}
Not sure if this will work as... (4 Replies)
Discussion started by: saurabh.mishra
4 Replies
touch(1B) SunOS/BSD Compatibility Package Commands touch(1B)
NAME
touch - change file access and modification times
SYNOPSIS
/usr/ucb/touch [-acfm] file...
DESCRIPTION
touch sets the access and modification times of each file to the current time. file is created if it does not already exist.
OPTIONS
-a Change the access time of file. Do not change the modification time unless -m is also specified.
-c Do not create file if it does not exist.
-f Attempt to force the touch in spite of read and write permissions on file.
-m Change the modification time of file. Do not change the access time unless -a is also specified.
USAGE
See largefile(5) for the description of the behavior of touch when encountering files greater than or equal to 2 Gbyte ( 2**31 bytes).
EXIT STATUS
The following exit values are returned:
0 touch executed successfully and all requested changes were made.
>0 An error occurred. touch returns the number of files for which the times could not be successfully modified.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWscpu |
+-----------------------------+-----------------------------+
SEE ALSO
touch(1), attributes(5), largefile(5)
SunOS 5.10 26 Oct 1995 touch(1B)