ls and rm command

  • From: <Joel.Patterson@xxxxxxxxxxx>
  • To: <oracle-l@xxxxxxxxxxxxx>
  • Date: Mon, 3 Dec 2007 13:46:55 -0500

This happened using mtime and atime.   I list everything older than X
days, then rm them, then use the same list command again, except that
now all the remaing files list?  Solaris 5.8.

This does not happen with -exec but -exec is slower, and it doesn't
happen with {} \;  - see below.   Anyone have any tips?

WITH XARGS
jaxlawdw > find . -name "access_log.*" -atime +245 | xargs ls -lt
-rw-r--r--   1 oracle   dba       746678 Apr  2  2007
./access_log.20070401_0643
jaxlawdw > find . -name "access_log.*" -atime +245 | xargs rm    
jaxlawdw > find . -name "access_log.*" -atime +245 | xargs ls -lt
total 442776
-rw-r--r--   1 oracle   dba       444643 Dec  3 13:31 access_log
-rw-r--r--   1 oracle   dba        42519 Dec  3 11:38 event_log
drwxr-----   2 oracle   dba         1536 Dec  3 08:39 archive
-rw-r--r--   1 oracle   dba       925017 Dec  3 00:00
access_log.20071202_0000
-rw-r--r--   1 oracle   dba       925017 Dec  2 00:00
access_log.20071201_0000
-rw-r--r--   1 oracle   dba       925017 Dec  1 00:00
access_log.20071130_0000
............... about 250 lines.


WITH -EXEC
jaxlawdw > find . -name "access_log.*" -atime +243 -exec ls -lt {} \;
-rw-r--r--   1 oracle   dba       924990 Apr  3  2007
./access_log.20070402_0000
-rw-r--r--   1 oracle   dba       924990 Apr  4  2007
./access_log.20070403_0000
jaxlawdw > find . -name "access_log.*" -atime +243 -exec rm {} \;    
jaxlawdw > find . -name "access_log.*" -atime +243 -exec ls -lt {} \;


jaxlawdw > find . -name "access_log.*" -atime +240 | xargs ls -lt {} \;

{}: No such file or directory
;: No such file or directory
-rw-r--r--   1 oracle   dba       924990 Apr  7  2007
./access_log.20070406_0000
-rw-r--r--   1 oracle   dba       924990 Apr  6  2007
./access_log.20070405_0000
-rw-r--r--   1 oracle   dba       924990 Apr  5  2007
./access_log.20070404_0000
jaxlawdw > find . -name "access_log.*" -atime +240 | xargs rm {} \;    
{}: No such file or directory
;: No such file or directory
jaxlawdw > find . -name "access_log.*" -atime +240 | xargs ls -lt {} \;
{}: No such file or directory
;: No such file or directory


Joel Patterson
Database Administrator
joel.patterson@xxxxxxxxxxx
x72546
904  727-2546

Other related posts: