Visit Our UNIX and Linux User Community


compare files in the system with last modified date


 
Thread Tools Search this Thread
Operating Systems Linux compare files in the system with last modified date
# 1  
Old 10-19-2007
compare files in the system with last modified date

HI,

I have some files in my Linux machine that are very old and occupy a HUGe amount of space. I am trying to delete these files from the system so that it will be easy for me to add some files. I would like to know if this can done through a Perl or a shell script.

What i want to do is i want to compare the files with the current date stamp and list all the files that are were untouched for more than TWO years.

Please can some whe help me on how this can be done.

I am new to Linux and need Guidance on this.

Thanks,
Sandeep
# 2  
Old 10-19-2007
man test

Code:
     file1 -nt file2
                   True if file1 exists and is newer than file2.

     file1 -ot file2
                   True if file1 exists and is older than file2.

So if you have a file with your cutoff timestamp you can compare others such:

Code:
if test $candidate-file -ot $cutoff-file
then
     echo $candidate-file
fi

# 3  
Old 10-19-2007
Hi Porter,

The script you have given is probably if i know the filename, but in my case i don't know the names of all the files( thats were the problem lies)....I need to find files that have not been changed from past two years by compariing them with respect to the last modified date. Also i am starter to shell scripting so please help me with the complete code. I really appreciate you time to look into this thread.Thanks so much.

Please let me know your thoughts.

Thanks,
Sandeep
# 4  
Old 10-19-2007
try

find directory ! -newer candidate | xargs ls -ld

when that is showing you the correct files

replace "ls -ld" with "rm"

Note, it is your responsiblity to have the appropriate backups. Do not attempt this if you don't know what you are doing.
# 5  
Old 10-19-2007
HI porter,

I am bit confused with your inputs. can you just leme know how this can be written in a shell script.

THanks for your time

Sandeep
# 6  
Old 10-19-2007
Code:
#!/bin/sh
find directory ! -newer cutoff-file | xargs ls -ld

where directory is the path to the directory you want to clean
cutoff-file is the path to a file which has the filestamp you want to compare with.
# 7  
Old 01-15-2008
MySQL

Quote:
Originally Posted by porter
man test

Code:
     file1 -nt file2
                   True if file1 exists and is newer than file2.

     file1 -ot file2
                   True if file1 exists and is older than file2.

So if you have a file with your cutoff timestamp you can compare others such:

Code:
if test $candidate-file -ot $cutoff-file
then
     echo $candidate-file
fi

SmilieconfirmSmilie

Previous Thread | Next Thread
Test Your Knowledge in Computers #935
Difficulty: Medium
A fixed 32-bit data format for system time means that timestamps rolls over approximately every 136 years, with the first such occurrence on 7 February 2036.
True or False?

10 More Discussions You Might Find Interesting

1. Answers to Frequently Asked Questions

Compare date in .txt with system date and remove if it's lesser than system date

I m working on shell scripting and I m stuck where in my .txt file there is column as expiry date and I need to compare that date with system date and need to remove all the rows where expiry date is less than system date and create a new .txt with update. (1 Reply)
Discussion started by: Stuti
1 Replies

2. UNIX for Beginners Questions & Answers

Compare date in .txt with system date and remove if it's lesser than system date

Can someone help me with the code wherein there is a file f1.txt with different column and 34 column have expiry date and I need to get that and compare with system date and if expiry date is <system date remove those rows and other rows should be moved to new file f2.txt . I don't want to delete... (2 Replies)
Discussion started by: Stuti
2 Replies

3. Shell Programming and Scripting

Compare the system date with date from a text file

I get the date that's inside a text file and assigned it to a variable. When I grep the date from the file, I get this, Not After : Jul 28 14:09:57 2017 GMT So I only crop out the date, with this command echo $dateFile | cut -d ':' -f 2,4The result would be Jul 28 14:57 2017 GMT How do I... (3 Replies)
Discussion started by: Loc
3 Replies

4. Shell Programming and Scripting

How to get the files which has modified date as yesterday and before?

Hi All, Can you please help me to get only the files which has the modified date as yesterday and before? Thanks in advance! Regards, Velava.S (4 Replies)
Discussion started by: velava
4 Replies

5. Shell Programming and Scripting

Adding days to system date then compare to a date

Hi! I am trying to read a file and every line has a specific date as one of its fields. I want to take that date and compare it to the date today plus 6 days. while read line do date=substr($line, $datepos, 8) #date is expected to be YYYYMMDD if ; then ...proceed commands ... (1 Reply)
Discussion started by: kokoro
1 Replies

6. UNIX for Dummies Questions & Answers

mv folders/files without changing modified date?

Hi all, I'm using Red Hat Linux and want to move some folders and files around but not change the modified date. Is this possible? I know cp has a -p flag which seems to do what I want, but this is a large volume of data so copying and deleting would not be feasible. (13 Replies)
Discussion started by: Annorax
13 Replies

7. UNIX for Dummies Questions & Answers

Number of files in a directory modified on a date

Hi How to list all the files in a directory that are modified on a particular date? Also need to know the count,i.e number of files modified on a particular date. Thanks Ashok (1 Reply)
Discussion started by: ashok.k
1 Replies

8. UNIX for Dummies Questions & Answers

Find last modified date for many files

Hello all - I've looked and have not been able to find a "find" command that will list the last modified date of files within a specific directory and its subdirectories. If anyone knows of such a command it would be very much appreciated! If possible, I would like to sort this output and have... (5 Replies)
Discussion started by: MichaelH3947
5 Replies

9. Shell Programming and Scripting

Compare date from db2 table to yesterday's Unix system date

I am currently running the following Korn shell script which works fine: #!/usr/bin/ksh count=`db2 -x "select count(*) from schema.tablename"` echo "count" I would like to add a "where" clause to the 2nd line that would allow me to get a record count of all the records from schema.tablename... (9 Replies)
Discussion started by: sasaliasim
9 Replies

10. UNIX for Dummies Questions & Answers

Create a list of files that were modified after a given date.

Hello Mates! I'm kinda new to unix and need to a solve a problem. Input: date Situation: With the given date I need to find a list of all such files starting from a given path that were modified after the given date. I experimented with the "find" with "-newer" but did not quite get it... (4 Replies)
Discussion started by: rkka
4 Replies

Featured Tech Videos