• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 216
  • Last Modified:

Find Access Time Script

I am looking for a way to remove files that haven't been accessed in approx. 45 minutes that are located in a specific directory. I know I can use find with something but I am not sure what to use in conjunction with it.
0
phreakin
Asked:
phreakin
  • 4
  • 3
  • 2
  • +2
1 Solution
 
biraCommented:
Hi

  Here is an example of using find with the parameters
you want.

To remove all files named a.out or *.o that have not been accessed for a week and that are not mounted using nfs, enter:

find / \( -name a.out -o  -name '*.o' \) -atime +7 ! -fstype nfs
-exec \ rm {} \;

Note:   The number used within the -atime expression is +7. This is
the correct entry if you want the command to act on files not accessed
for more than a week (seven 24-hour periods).
0
 
phreakinAuthor Commented:
Ok, but what about for 45 minues?
0
 
biraCommented:
Unfortunatelly now i am at home, where a have no unix to
do some test.
 But i advise you to see man find for the parameters
 of this command.

  I have already used -atime because i needed to delete
a minimum of one day, not minutes as you want.

  Good luck
0
Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

 
griesshCommented:
phreakin

the -?time option is always using 24h steps, not quite what you are looking for. The better way might be the -newer <filename> option. It compares with the timestamp of an existing file (like "find \home\xxx -newer \home\test.file ! -exec \ rm {} \;") The problem is now to 'touch' the \home\test.file. I don't know how exact your 45 minutes have to be, but you could touch the file in a cronjob ...

Let us know ...

======
Werner
0
 
phreakinAuthor Commented:
What about doing this, would it work?

find /directory -mmin +40 > temp.file
rm -r < temp.file
0
 
griesshCommented:
I haven't seen the -mmin option (what is your OS?), but the rm won't work.
If you have that -mmin, then do something like:
find /directory -mmin +40 -exec \ rm {} \;

======
Werner
0
 
phreakinAuthor Commented:
The OS is HP-UX 10.24
0
 
trynoCommented:
Hi, it seems to be difficult (impossible?) to do something with find with smaller steps than one day, so I have another suggestion:
If you list the content of your directory with ls -lu, you will get the access time instead of modification time in the time column.  Futhermore, if you use ls -trlu the list will be sorted with the most recently accessed files at the bottom.
From here, you can probably make a script that analyzes the time colum and make the desired actions.
0
 
MoondancerCommented:
This question appears to have been abandoned. Your options are:
 
1.  Accept a Comment As Answer (use the button next to the Expert's name).
2. Close the question if the information was not useful to you. You must tell the participants why you wish to do this, and allow for Expert response.
3.  Ask Community Support to help split points between participating experts, or just comment here with details and we'll respond with the process.
4.  Delete the question. Again, you must tell the other participants why you wish to do this.
 
Please click this Help Desk link for Member Guidelines, Member Agreement and the Question/Answer process:  Click you Member Profile to view your question history and keep them all current with updates as the collaboration effort continues.
http://www.experts-exchange.com/jsp/cmtyHelpDesk.jsp
 
PLEASE DO NOT AWARD THE POINTS TO ME.  
_________________________________________
------------>  EXPERTS:
 
Please leave any comments regarding this question here on closing recommendations if this item remains inactive another three days.
 
Thank you everyone.
 
Moondancer
Community Support Moderator @ Experts Exchange
0
 
griesshCommented:
Since we didn't get any feedback from the asker about the precision needed, I claim that I provided a working solution.

======
Werner
0
 
MoondancerCommented:
Thank you, Werner, and sorry for the delay.  This was finalized today.  There are just too many in my EE Inbox, all the time.  :)
Moondancer - EE Moderator
0
 
griesshCommented:
Don't feel sorry! My revenge is in CS already :-)

=======
Werner
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Amazon Web Services - Basic

Are you thinking about creating an Amazon Web Services account for your business? Not sure where to start? In this course you’ll get an overview of the history of AWS and take a tour of their user interface.

  • 4
  • 3
  • 2
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now