-1

I am looking for a command which can show the list of files which are older than 1 day and a command which can delete those files.

Here is the command I have:

sudo find -type f -name "*.tmp" -mtime +1 -exec  ls -ltrh  {} \;

This command is giving me the list of files which are older than 2 days. But I want to get the list of files which are more than 24Hrs old.

Similarly, I have below command which deletes the files:

sudo find -type f -name "*.tmp" -mtime +1 -delete

Again same issue, it deletes only those files which are 2 days old.

Can you help me with the correct command to use.

**Update : **

This is the list which I got if I do ls -ltr

-rw------- 1 user user  56344 Jun 18 03:22 4852594605084969096.tmp
-rw------- 1 user user  62420 Jun 18 03:52 8128596406378306564.tmp
-rw------- 1 user user  45108 Jun 18 05:14 9221373979761847380.tmp
-rw------- 1 user user  52092 Jun 18 05:38 8803375736497642014.tmp
-rw------- 1 user user  46076 Jun 18 05:55 2597624169466947823.tmp
-rw------- 1 user user  45108 Jun 18 06:10 7331064027553067163.tmp
-rw------- 1 user user  57600 Jun 18 06:53 571617644221476695.tmp
-rw------- 1 user user  46076 Jun 18 06:53 3250632105294480811.tmp
-rw------- 1 user user  46076 Jun 18 06:53 3049416494164364083.tmp
-rw------- 1 user user  56344 Jun 18 07:28 3800708410202563331.tmp
-rw------- 1 user user  45108 Jun 18 07:28 8459614580010423232.tmp
-rw------- 1 user user  43520 Jun 18 07:57 8661904436966583049.tmp
-rw------- 1 user user  46076 Jun 18 07:57 1204891285897472382.tmp
-rw------- 1 user user  81900 Jun 18 09:32 8465358150249612844.tmp
-rw------- 1 user user 124432 Jun 18 09:32 7187243412111611681.tmp
-rw------- 1 user user  56436 Jun 18 09:51 8372171566419231034.tmp
-rw------- 1 user user  42904 Jun 18 09:51 667863893329482278.tmp
-rw------- 1 user user  41972 Jun 18 10:11 3847591475306960147.tmp
-rw------- 1 user user 116872 Jun 18 10:11 7966362913792512054.tmp
-rw------- 1 user user  45108 Jun 18 10:11 8439035344531042431.tmp
-rw------- 1 user user 185560 Jun 18 10:11 8474346694096813378.tmp
-rw------- 1 user user  46076 Jun 18 10:11 4760470706645148372.tmp
-rw------- 1 user user  41972 Jun 18 10:11 9157761570806548970.tmp
-rw------- 1 user user  42904 Jun 18 10:12 8915926699291849585.tmp
-rw------- 1 user user  41972 Jun 18 10:22 4483378368608075076.tmp
-rw------- 1 user user  46076 Jun 18 10:22 8039354996724735242.tmp
-rw------- 1 user user  46076 Jun 18 10:22 1441427612150519563.tmp
-rw------- 1 user user  46076 Jun 18 13:39 3895289049566214606.tmp
-rw------- 1 user user  46076 Jun 18 13:41 4523819359899311681.tmp
-rw------- 1 user user  59608 Jun 18 14:28 5171792312670553667.tmp
-rw------- 1 user user  41972 Jun 18 16:07 1381867850547954997.tmp
-rw------- 1 user user  46076 Jun 18 16:08 2377385254288601418.tmp
-rw------- 1 user user  46076 Jun 18 16:08 2757855781341192620.tmp
-rw------- 1 user user  46076 Jun 18 16:08 990402164110920641.tmp
-rw------- 1 user user  88980 Jun 18 17:02 3519429446055316602.tmp
-rw------- 1 user user  46076 Jun 18 18:34 2718504484399041994.tmp
-rw------- 1 user user  52588 Jun 18 20:40 8282149999256755040.tmp
-rw------- 1 user user  45108 Jun 18 20:40 2535213203951007401.tmp
-rw------- 1 user user  62804 Jun 18 20:41 3344181299125676547.tmp
-rw------- 1 user user  46076 Jun 18 20:56 5704898344921554440.tmp
-rw------- 1 user user  57600 Jun 18 21:04 6910781806107437056.tmp
-rw------- 1 user user  57600 Jun 18 21:05 8996587449350363530.tmp
-rw------- 1 user user  57600 Jun 18 21:05 2201114289500171076.tmp
-rw------- 1 user user 171212 Jun 18 21:43 568113257671337808.tmp
-rw------- 1 user user  46076 Jun 19 02:22 4686252438135803799.tmp
-rw------- 1 user user  46076 Jun 19 02:23 1024337710253657481.tmp
-rw------- 1 user user  46076 Jun 19 02:23 8138681836575745204.tmp
-rw------- 1 user user  46076 Jun 19 02:23 4551895045706757158.tmp
-rw------- 1 user user  72880 Jun 19 02:58 6720139662475805522.tmp
-rw------- 1 user user 138036 Jun 19 03:39 4261193719990867277.tmp
-rw------- 1 user user  43520 Jun 19 04:30 2189638076744384268.tmp
-rw------- 1 user user  46076 Jun 19 04:30 9069524378589378948.tmp
-rw------- 1 user user  46076 Jun 19 06:21 4197944256637931725.tmp
-rw------- 1 user user  41972 Jun 19 07:01 4881839192080059356.tmp
-rw------- 1 user user  41972 Jun 19 07:29 7939325415825814975.tmp
-rw------- 1 user user  52092 Jun 19 08:02 334987770024624782.tmp
-rw------- 1 user user  38504 Jun 19 09:19 2006993025338095576.tmp
-rw------- 1 user user  43520 Jun 19 09:41 7349787809048549539.tmp
-rw------- 1 user user  42904 Jun 19 09:45 1393091432117053268.tmp
-rw------- 1 user user  52588 Jun 19 09:45 6110897423492319793.tmp
-rw------- 1 user user  62804 Jun 19 09:45 9143197155997936730.tmp
-rw------- 1 user user  88980 Jun 19 10:47 2758611773267584579.tmp
-rw------- 1 user user  88980 Jun 19 10:47 8190296254180009992.tmp
-rw------- 1 user user  45108 Jun 19 13:06 5668356474649690853.tmp
-rw------- 1 user user  46076 Jun 19 13:06 8831342235645870908.tmp
-rw------- 1 user user  52092 Jun 19 13:07 3760436936603717823.tmp
-rw------- 1 user user  46020 Jun 19 13:43 5381449090462674458.tmp
-rw------- 1 user user  45108 Jun 19 13:51 5714193329079454521.tmp
-rw------- 1 user user  62420 Jun 19 14:08 1861226554558152474.tmp
-rw------- 1 user user  45108 Jun 19 14:09 8180644227674226434.tmp
-rw------- 1 user user  56344 Jun 19 14:11 1162382849464709134.tmp
-rw------- 1 user user  56344 Jun 19 14:11 4473912385829326236.tmp
-rw------- 1 user user  59224 Jun 19 14:12 44816572340739296.tmp
-rw------- 1 user user  49416 Jun 19 14:29 2253955402032058887.tmp
-rw------- 1 user user  46076 Jun 19 14:54 2224021715630683512.tmp
-rw------- 1 user user  83472 Jun 19 15:25 455967079139355584.tmp
-rw------- 1 user user  83472 Jun 19 15:26 1074541420877403068.tmp
-rw------- 1 user user  46076 Jun 19 15:59 3632140460732481164.tmp
-rw------- 1 user user  45108 Jun 19 17:30 8847261278086377700.tmp
-rw------- 1 user user  54000 Jun 19 18:02 8681044407184944721.tmp
-rw------- 1 user user  54564 Jun 19 20:01 7703927324243684958.tmp
-rw------- 1 user user  54564 Jun 19 20:01 7448280277407508823.tmp
-rw------- 1 user user  54564 Jun 19 20:01 7069154843842198769.tmp
-rw------- 1 user user  54564 Jun 19 20:02 1431729105371009759.tmp
-rw------- 1 user user  54564 Jun 19 20:02 8359037531819485082.tmp
-rw------- 1 user user  54564 Jun 19 20:03 6457682749783413761.tmp
-rw------- 1 user user  54564 Jun 19 20:03 2038572826201539987.tmp
-rw------- 1 user user  54564 Jun 19 20:04 6491355393264185784.tmp
-rw------- 1 user user  59224 Jun 19 20:16 2043006978494200118.tmp
-rw------- 1 user user  45108 Jun 19 20:17 6492540855183189725.tmp
-rw------- 1 user user  45108 Jun 19 20:17 6477956601825850231.tmp
-rw------- 1 user user  45108 Jun 19 20:18 1074194357181759005.tmp
-rw------- 1 user user  45108 Jun 19 20:19 5440321220011066253.tmp
-rw------- 1 user user  45108 Jun 19 20:19 260683267390104293.tmp
-rw------- 1 user user  45108 Jun 19 20:20 1824196232656746433.tmp
-rw------- 1 user user  45108 Jun 19 20:20 8724797559370142565.tmp
-rw------- 1 user user  45108 Jun 19 20:21 6397991201954236018.tmp
-rw------- 1 user user  72880 Jun 20 04:14 7838401226118727100.tmp
-rw------- 1 user user  72880 Jun 20 04:15 7801714965385023569.tmp
-rw------- 1 user user  45108 Jun 20 08:42 1274908829136861980.tmp
-rw------- 1 user user  52092 Jun 20 08:43 5780888862258234581.tmp
-rw------- 1 user user  38628 Jun 20 08:52 756204766770614860.tmp
-rw------- 1 user user  45108 Jun 20 08:52 7485022978628098434.tmp
-rw------- 1 user user 105900 Jun 20 09:11 7854932029957477444.tmp
-rw------- 1 user user 105900 Jun 20 09:11 3956354999155285593.tmp
-rw------- 1 user user 105900 Jun 20 09:11 3966927481297956709.tmp
-rw------- 1 user user 105900 Jun 20 09:12 1705387516049599565.tmp
-rw------- 1 user user 105900 Jun 20 09:12 2525082796466540228.tmp
-rw------- 1 user user 105900 Jun 20 09:13 1591380519419898347.tmp
-rw------- 1 user user 105900 Jun 20 09:13 1102639893375607994.tmp
-rw------- 1 user user 105900 Jun 20 09:13 5262767813878310145.tmp
-rw------- 1 user user 105900 Jun 20 09:13 3288610156358797188.tmp
-rw------- 1 user user 105900 Jun 20 09:14 5829119682812572228.tmp
-rw------- 1 user user 105900 Jun 20 09:14 2452109250260818709.tmp
-rw------- 1 user user 105900 Jun 20 09:14 4590122970450657628.tmp
-rw------- 1 user user 105900 Jun 20 09:14 2294389195637964118.tmp
-rw------- 1 user user 105900 Jun 20 09:15 1676044168282755245.tmp
-rw------- 1 user user 105900 Jun 20 09:15 4366308640611104547.tmp
-rw------- 1 user user  46076 Jun 20 10:06 1107385874840309577.tmp
-rw------- 1 user user  41972 Jun 20 10:27 1085531486653661362.tmp
-rw------- 1 user user  62420 Jun 20 10:27 2101806982432516818.tmp
-rw------- 1 user user  62420 Jun 20 10:53 1624354934648606290.tmp
-rw------- 1 user user  65568 Jun 20 10:53 7654095057348026506.tmp
-rw------- 1 user user  65568 Jun 20 10:54 7700552507815118770.tmp
-rw------- 1 user user  65568 Jun 20 10:54 6308712112426443403.tmp
-rw------- 1 user user 102740 Jun 20 11:00 8795448846476018069.tmp
-rw------- 1 user user  52092 Jun 20 12:54 500845023343173208.tmp
-rw------- 1 user user  46076 Jun 20 12:54 3121276696569990545.tmp
-rw------- 1 user user  49416 Jun 20 13:46 5340608448298127831.tmp
-rw------- 1 user user  45108 Jun 20 13:46 6205360401301143413.tmp
-rw------- 1 user user  46076 Jun 20 13:59 855287858467535972.tmp
-rw------- 1 user user  56344 Jun 20 14:06 1803842700206075916.tmp
-rw------- 1 user user  46076 Jun 20 14:37 6491060217824383745.tmp
-rw------- 1 user user  45108 Jun 20 15:22 4328564943420472688.tmp
-rw------- 1 user user  45108 Jun 20 15:22 673290658104000296.tmp
-rw------- 1 user user  62804 Jun 20 15:22 3787216729224135023.tmp
-rw------- 1 user user  56344 Jun 20 21:08 4510338970233080762.tmp
-rw------- 1 user user  41972 Jun 21 00:13 398372327339912681.tmp
-rw------- 1 user user  56344 Jun 21 00:13 6904086396325952937.tmp
-rw------- 1 user user  59608 Jun 21 00:46 4051984352785933079.tmp
-rw------- 1 user user 127044 Jun 21 01:45 1935681615649757944.tmp
-rw------- 1 user user  55380 Jun 21 04:00 788398820398782761.tmp
-rw------- 1 user user  57600 Jun 21 04:00 3451867978654331939.tmp
-rw------- 1 user user  81900 Jun 21 06:09 3933771831691223539.tmp
-rw------- 1 user user  41304 Jun 21 06:10 5072654537578520166.tmp
-rw------- 1 user user  63668 Jun 21 06:10 8226596435615677441.tmp
-rw------- 1 user user  52092 Jun 21 07:48 7828279481225944808.tmp
-rw------- 1 user user  45684 Jun 21 10:30 2656910068365164057.tmp
-rw------- 1 user user  45108 Jun 21 10:31 195381961836753748.tmp
-rw------- 1 user user  43520 Jun 21 12:17 2400956652998491214.tmp
-rw------- 1 user user  49416 Jun 21 12:17 30508930089948393.tmp
-rw------- 1 user user  46020 Jun 21 12:17 6661846546424060419.tmp
-rw------- 1 user user 138036 Jun 21 12:17 5959997606181451969.tmp
-rw------- 1 user user  77388 Jun 21 13:03 331824420489889105.tmp
-rw------- 1 user user  52092 Jun 21 13:04 3758738812509306383.tmp
-rw------- 1 user user  45108 Jun 21 13:37 7496237755092762906.tmp
-rw------- 1 user user  59608 Jun 21 13:38 6544683383068478158.tmp
-rw------- 1 user user  52092 Jun 21 14:16 5731163136062904185.tmp
-rw------- 1 user user  45108 Jun 21 16:18 5547529479186863324.tmp
-rw------- 1 user user 171212 Jun 21 16:20 8323838581661442775.tmp
-rw------- 1 user user  42904 Jun 21 16:20 7250838806301761089.tmp
-rw------- 1 user user 171212 Jun 21 16:20 813682571379587717.tmp
-rw------- 1 user user 171212 Jun 21 16:20 8291233772358876144.tmp
-rw------- 1 user user  42904 Jun 21 16:20 4576361552735460033.tmp
-rw------- 1 user user 171212 Jun 21 16:20 1380471275230087315.tmp
-rw------- 1 user user  42904 Jun 21 16:21 3773859160506116712.tmp
-rw------- 1 user user  42904 Jun 21 16:21 1093442959977787407.tmp
-rw------- 1 user user  45684 Jun 21 16:21 7132957373537332056.tmp
-rw------- 1 user user  81900 Jun 21 17:41 4874781119889192787.tmp
-rw------- 1 user user  81900 Jun 21 18:59 458733250710614684.tmp
-rw------- 1 user user  45108 Jun 21 18:59 8010533676207338451.tmp
-rw------- 1 user user  49416 Jun 21 22:47 6193537558164312069.tmp
-rw------- 1 user user  45108 Jun 21 22:47 5030888357164286514.tmp
-rw------- 1 user user  38628 Jun 22 01:53 5987612845570695845.tmp
-rw------- 1 user user  45108 Jun 22 01:53 8340424949591407739.tmp

Now running the command find . -mtime 1 -type f -exec ls -lrth "{}" \; gives me below list:

-rw------- 1 user user 62K Jun 20 15:22 3787216729224135023.tmp
-rw------- 1 user user 45K Jun 20 13:46 6205360401301143413.tmp
-rw------- 1 user user 104K Jun 20 09:14 2452109250260818709.tmp
-rw------- 1 user user 45K Jun 20 15:22 673290658104000296.tmp
-rw------- 1 user user 45K Jun 20 13:59 855287858467535972.tmp
-rw------- 1 user user 56K Jun 21 00:13 6904086396325952937.tmp
-rw------- 1 user user 104K Jun 20 09:14 2294389195637964118.tmp
-rw------- 1 user user 45K Jun 20 14:37 6491060217824383745.tmp
-rw------- 1 user user 125K Jun 21 01:45 1935681615649757944.tmp
-rw------- 1 user user 45K Jun 20 08:52 7485022978628098434.tmp
-rw------- 1 user user 104K Jun 20 09:14 5829119682812572228.tmp
-rw------- 1 user user 104K Jun 20 09:15 4366308640611104547.tmp
-rw------- 1 user user 104K Jun 20 09:12 1705387516049599565.tmp
-rw------- 1 user user 104K Jun 20 09:13 3288610156358797188.tmp
-rw------- 1 user user 104K Jun 20 09:11 7854932029957477444.tmp
-rw------- 1 user user 65K Jun 20 10:54 7700552507815118770.tmp
-rw------- 1 user user 45K Jun 20 15:22 4328564943420472688.tmp
-rw------- 1 user user 41K Jun 20 10:27 1085531486653661362.tmp
-rw------- 1 user user 51K Jun 20 08:43 5780888862258234581.tmp
-rw------- 1 user user 56K Jun 20 14:06 1803842700206075916.tmp
-rw------- 1 user user 72K Jun 20 04:15 7801714965385023569.tmp
-rw------- 1 user user 41K Jun 21 00:13 398372327339912681.tmp
-rw------- 1 user user 38K Jun 20 08:52 756204766770614860.tmp
-rw------- 1 user user 104K Jun 20 09:13 1591380519419898347.tmp
-rw------- 1 user user 49K Jun 20 13:46 5340608448298127831.tmp
-rw------- 1 user user 45K Jun 20 12:54 3121276696569990545.tmp
-rw------- 1 user user 104K Jun 20 09:15 1676044168282755245.tmp
-rw------- 1 user user 101K Jun 20 11:00 8795448846476018069.tmp
-rw------- 1 user user 104K Jun 20 09:11 3956354999155285593.tmp
-rw------- 1 user user 45K Jun 20 10:06 1107385874840309577.tmp
-rw------- 1 user user 61K Jun 20 10:27 2101806982432516818.tmp
-rw------- 1 user user 104K Jun 20 09:11 3966927481297956709.tmp
-rw------- 1 user user 72K Jun 20 04:14 7838401226118727100.tmp
-rw------- 1 user user 56K Jun 20 21:08 4510338970233080762.tmp
-rw------- 1 user user 51K Jun 20 12:54 500845023343173208.tmp
-rw------- 1 user user 104K Jun 20 09:12 2525082796466540228.tmp
-rw------- 1 user user 61K Jun 20 10:53 1624354934648606290.tmp
-rw------- 1 user user 65K Jun 20 10:54 6308712112426443403.tmp
-rw------- 1 user user 45K Jun 20 08:42 1274908829136861980.tmp
-rw------- 1 user user 59K Jun 21 00:46 4051984352785933079.tmp
-rw------- 1 user user 104K Jun 20 09:14 4590122970450657628.tmp
-rw------- 1 user user 104K Jun 20 09:13 5262767813878310145.tmp
-rw------- 1 user user 65K Jun 20 10:53 7654095057348026506.tmp
-rw------- 1 user user 104K Jun 20 09:13 1102639893375607994.tmp

I was expecting all the files which are dated Jun 18, Jun 19, Jun 20, Jun 21. The Jun 21 files can be restricted to files which or older than 24Hrs. But the command is giving only Jun 20 & Jun 21 files which are older than 24Hrs but ignoring Jun 18 & Jun 19 files.

Chaitanya
  • 15,403
  • 35
  • 96
  • 137
  • http://unix.stackexchange.com/a/112407 – TessellatingHeckler Jun 20 '16 at 11:25
  • *Are* there files of age 1 to 2 days? – Kusalananda Jun 20 '16 at 11:52
  • @Chaitanya See first comment above. – Kusalananda Jun 20 '16 at 12:12
  • @Kusalananda, yes the commented link seems to be working. I am checking that – Chaitanya Jun 20 '16 at 12:18
  • @Chaitanya: My updated answer should work for you – Inian Jun 20 '16 at 13:14
  • @Chaitanya: Let me know if the provided solution works, so that this post can be closed – Inian Jun 22 '16 at 09:00
  • @Inian, I updated my question, with what is the original data and what is happening if I your command. It seems some more changes needed in the command to fix my issue. Can you please help me in that. – Chaitanya Jun 22 '16 at 09:57
  • @Chaitanya: I am afraid you have confused it all up, if you are looking for files modified over days `Jun 18, Jun 19, Jun 20, Jun 21` which is upto 4 days from now, you need to have given the option as `-mtime 3`. Please refer my answer below which mentions the date ranges for each of `mtime N`, `-mtime +N` and `-mtime -N` – Inian Jun 22 '16 at 10:40
  • @Inian, I need to find out all the files which are older than 24Hrs from now. It is not specific number of days. Actually my question also says the same. – Chaitanya Jun 22 '16 at 10:54
  • @Chaitanya: Agreed! but you need to specify an upper bound to stop the search! As far as I know `find` doesn't support search files older than 24Hrs from now to forever! – Inian Jun 22 '16 at 14:03

1 Answers1

1

find allows just that using -mtime option as explained in the answer here which does the trick for you.

The answer you are looking forward to is below, which finds files that were modified exactly between 1 and 2 days ago.

-mtime 1 (the actual answer)

find /sourcedirectory -mtime 1 -type f -exec ls -lrth "{}" \; -exec rm "{}" \;

in general finds files that were last modified between N and N+1 days ago.

will be just sufficient for listing and deleting the files. You can use any number of -exec's as long as you follow the syntax.

Other options work as follows:-

-mtime +N -> files modified at least N+1 days ago

-mtime -N -> files modified less than N days ago

Community
  • 1
  • 1
Inian
  • 80,270
  • 14
  • 142
  • 161
  • The OP wants older-than, not newer-than. – Kusalananda Jun 20 '16 at 11:50
  • 1
    @Kusalananda: Thanks for pointing that out, copy pasted from a similar alternate answer of mine! – Inian Jun 20 '16 at 11:55
  • @Inian, I am looking for command which deletes files older than 24Hrs, but the command in your answer still does not satisfy my requirement. I can see files which are more than 24Hrs old after running the delete command. That is files which are more than a day and less than 2 days. – Chaitanya Jun 20 '16 at 12:13
  • @Chaitanya: You want the files created instead of last modified/accessed? Is that right? – Inian Jun 20 '16 at 12:17
  • @Inian, basically I am just doing `ls -ltr` and checking the timestamp and want to delete files which are more than 24Hrs. So I am considering files which are modified also, not just created. – Chaitanya Jun 20 '16 at 12:19
  • If you have answered a similar question in the past, please nominate this one as a duplicate instead. – tripleee Jun 20 '16 at 12:30
  • @tripleee: Thought of that, http://stackoverflow.com/questions/37411988/move-files-that-are-30-minutes-old/37412139#37412139 was my original answer, but OP for this had asked for running multiple commands, that is why didn't flag it for a duplicate – Inian Jun 20 '16 at 12:40