The UNIX and Linux Forums  


Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Hjälp Hjälp Hjälp i rekursion murtaza Shell-programmering och Skript 6 03-29-2007 11:26
tillåter rekursion på DNS-server? xnightcrawl UNIX för avancerade & Expertanvändare 1 03-29-2006 11:36
rekursion för djupt swamy455 Shell-programmering och Skript 3 07-18-2005 04:18
rekursion gsjf Shell-programmering och Skript 1 08-26-2002 01:22
bort filer Nisha Shell-programmering och Skript 7 06-26-2002 01:04

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 04-27-2008
nir_s nir_s is offline
Registered User
  
 

Join Date: juni 2004
Inlägg: 148
Ta bort gamla filer utan rekursion?

Hi folks,

Jag måste skriva ett skript som tar bort filer med ändelsen *. DMP från en viss katalog, äldre än 30 dagar och inte inklusive rekursiva underkataloger.

IE:
Följande kommando bort rekursiva alla *. DMP filer äldre än 30 dagar:
Kod:
find $ORACLE_BASE -mtime +30 -type f -name "*.dmp" -exec rm {} \;
Jag behöver ta bort filer som är äldre än 30 dagar men bara under $ ORACLE_BASE utan dess underkataloger.

Hur kan man göra det?

Tack på förhand
Nir
  #2 (permalänk)  
Old 04-27-2008
ripat ripat is offline Forum Advisor  
Registered User
  
 

Join Date: oktober 2006
Ort: Belgien
Inlägg: 438
Hej,

Använda -maxdepth 1 alternativ för att hitta kommandot.
  #3 (permalänk)  
Old 04-27-2008
nir_s nir_s is offline
Registered User
  
 

Join Date: juni 2004
Inlägg: 148
Hej,

Jag hittade inte ett sådant alternativ i "hitta"-kommandot ..
Kan du skicka ett exempel?

Tack på förhand
Nir
  #4 (permalänk)  
Old 04-27-2008
eran era is offline Forum Advisor  
Herder av Useless Cats (På sabbatsår)
  
 

Join Date: mars 2008
Ort: / det är / / bara / bin / sh
Inlägg: 3652
Om din hitta inte har det alternativet, ett exempel kommer knappast att hjälpa till?

Kod:
find $ORACLE_BASE -maxdepth 1 -mtime +30 -type f -name "*.dmp" -exec rm {} \;
Du kan filtrera resultaten från finna att utesluta någonting med minst två snedstreck i det, men:

Kod:
find $ORACLE_BASE -mtime +30 -type f -name "*.dmp" -print |
grep -v '/.*/' | xargs -r rm
Du kanske vill prova det med "xargs echo rm" för testning.

Antalet snedstreck naturligtvis beror på antalet snedstreck i $ ORACLE_BASE - två skulle vara korrekt för den aktuella katalogen. (ORACLE_BASE \u003d.)
  #5 (permalänk)  
Old 04-27-2008
rubin's Avatar
Rubin rubin is offline Forum Advisor  
Registered User
  
 

Join Date: Nov 2007
Inlägg: 321
Eller detta kanske hjälpa dig:

hitta kommandot
  #6 (permalänk)  
Old 04-27-2008
nir_s nir_s is offline
Registered User
  
 

Join Date: juni 2004
Inlägg: 148
Tack killar!

Slutligen använde jag "hitta. \ (!-Namn.-Prune \)" och det fungerar perfekt!

Vänliga hälsningar,
Nir
Closed Thread

Komihåglista

Taggar
mtime

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 04:21.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0