The UNIX and Linux Forums  

Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Script for automatisk sletting av gamle mappen summerpeh Sun Solaris 5 09-04-2008 11:27
script for sletting ved hjelp av jokertegn aishu UNIX for Dummies Spørsmål og svar 1 01-09-2008 05:37
Script for automatisk sletting av søppel fil av mail server crown2100bd Sun Solaris 1 09-20-2007 09:01
Script for automatisk sletting av gamle filer vivek_scv Shell programmering og Skripting 4 09-09-2007 02:57
dynamiske globale script isingh786 Shell programmering og Skripting 2 01-24-2007 08:35

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 denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 10-16-2008
cbo0485 cbo0485 is offline
Registrert bruker
  
 

Bli Date: Mar 2008
Innlegg: 87
Dynamisk Log Sletting / Rotatoin Script

Jeg har skrevet et lite statisk script for min logg sletting, men jeg lurte på om det var en måte å gjøre det til en dynamisk script. her er hvordan min skriften arbeider for øyeblikket.


Code:
#!/bin/sh
###########################################
#Script to zip logs older than 1 week old
#and to delete logs older than 30 days old
###########################################
#
##TEST
#
cd /opt/apache/test/logs
find . -name "access_*" -type f -mtime +8 -exec gzip {} \;
find . -name "access_*.gz" -type f -mtime +31 -exec rm {} \;
find . -name "error_*" -type f -mtime +8 -exec gzip {} \;
find . -name "error_*.gz" -type f -mtime +31 -exec rm {} \;
cd /opt/apache/test1/logs
find . -name "access_*" -type f -mtime +8 -exec gzip {} \;
find . -name "access_*.gz" -type f -mtime +31 -exec rm {} \;
find . -name "error_*" -type f -mtime +8 -exec gzip {} \;
find . -name "error_*.gz" -type f -mtime +31 -exec rm {} \;
cd /opt/apache/test2/logs
find . -name "access_*" -type f -mtime +8 -exec gzip {} \;
find . -name "access_*.gz" -type f -mtime +31 -exec rm {} \;
find . -name "error_*" -type f -mtime +8 -exec gzip {} \;
find . -name "error_*.gz" -type f -mtime +31 -exec rm {} \;
echo "Script complete on `date +%D`."

Nå for dette skriptet, må jeg bare kopiere og lime inn en ny blokk når jeg oppretter en ny apache server, men jeg tenkte siden katalogstrukturen og loggfilnavnene er alltid det samme, ville det være en måte jeg kunne legge i noen faktiske logikk på dette.

Muligens cd til / opt / apache / gjør en oppføring, så liksom bruke en matrise og en sløyfe for å fange opp navnet på hver mappe på en variabel, og deretter bruke denne variabelen for å kjøre finne kommandoen, de 4 linjer, deretter hvis en annen katalog finnes gjenta.
  #2 (permalink)  
Old 10-16-2008
Klashxx's Avatar
Klashxx Klashxx is offline Forum Advisor  
HP-UX/Linux/Oracle
  
 

Bli Date: Feb 2006
Beliggenhet: Almería, Spania
Innlegg: 393
Hei, bruk:

Code:
find /opt/apache/test*/logs \( -name "access_*.gz" -o -name "error_*.gz" \) -type f -mtime +31 -exec rm {} \;
find /opt/apache/test*/logs \( -name "access_*" -o -name "error_*" \) -type f -mtime +8 -exec gzip {} \;

Hilsen
  #3 (permalink)  
Old 10-16-2008
cbo0485 cbo0485 is offline
Registrert bruker
  
 

Bli Date: Mar 2008
Innlegg: 87
Sitat:
Originally Posted by Klashxx View Post
Hei, bruk:

Code:
find /opt/apache/test*/logs \( -name "access_*.gz" -o -name "error_*.gz" \) -type f -mtime +31 -exec rm {} \;
find /opt/apache/test*/logs \( -name "access_*" -o -name "error_*" \) -type f -mtime +8 -exec gzip {} \;

Hilsen
Testen * katalogen er faktisk ikke alle navngitte test, er det navnet på våre webservere, og de har ikke en vanlig mønster som det. Kan jeg bare erstatning for en * test *? For å gjøre det


Code:
find /opt/apache/*/logs \( -name "access_*.gz" -o -name "error_*.gz" \) -type f -mtime +31 -exec rm {} \;
find /opt/apache/*/logs \( -name "access_*" -o -name "error_*" \) -type f -mtime +8 -exec gzip {} \;

  #4 (permalink)  
Old 10-16-2008
Klashxx's Avatar
Klashxx Klashxx is offline Forum Advisor  
HP-UX/Linux/Oracle
  
 

Bli Date: Feb 2006
Beliggenhet: Almería, Spania
Innlegg: 393
Selvsagt!
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 12:47.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0