Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Dateien gemäß Alter archivieren lassen .....

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Stormbringer



Anmeldungsdatum: 11.01.2001
Beiträge: 1570
Wohnort: Ruhrgebiet

BeitragVerfasst am: 31. Okt 2002 18:09   Titel: Dateien gemäß Alter archivieren lassen .....

Hallo liebe Coder!!!

Würde mir bitte jemand ein Skript zaubern, welches Dateien in einem Verzeichnis erst nach einigen Tagen archiviert?

Hintergrund:
auf einen FTP Server bieten wir einigen Partnern Preistabellen zum download an.
Diese Dateien würden wir gerne auch dort belassen, so daß auch im Nachhinein auf die Daten zugegriffen werden kann. Der Übersichtlichkeit halber, und wegen dem Platzbedarf, möchte ich dann aber ganz gerne, daß alle Dateien älter als bspw. 10 Tage in ein .tar.gz oder .bz2 Archiv gepackt werden.

Auf jeden Fall schon einmal Vielen Dank!!!!

Gruß
_________________
Continuum Hierarchy Supervisor:
You have already been assimilated.
(Rechtschreibungsreformverweigerer!)
 
Benutzer-Profile anzeigen Private Nachricht senden

ratte
Gast





BeitragVerfasst am: 31. Okt 2002 18:49   Titel: Re: Dateien gemäß Alter archivieren lassen .....

ist zwar nicht dafuer gemacht, aber vielleicht kannst du logrotate dafuer konfigurieren?

ratte
 

Jochen
Gast





BeitragVerfasst am: 31. Okt 2002 22:02   Titel: Re: Dateien gemäß Alter archivieren lassen .....

Hi, Stormbringer! War Jeanette Dein Schwesterchen?

code:

#!/bin/bash

VERZEICHNIS=mein/verzeichnis/mit/daten # Ohne führenden Slash
ARCHIV=$VERZEICHNIS/archiv # Ohne Endung
FRIST=10 # Tage

# Da wir sichern, machen wir dies mit relativen Pfadnamen ab /.
cd /

# Archiv auspacken, da Option -r bei tar nicht mit
# komprimierten Archiven funktioniert. Existiert die
# Datei nicht, einfach weitermachen, da wahrscheinlich
# bis dato einfach noch keine angelegt wurde.

if [ -r $ARCHIV ] ; then
bzip2 -d $ARCHIV.tar.bz2
fi

# Liste der zu archivierenden Dateien erstellen,
# Namensmuster hier noch anpassen, da sonst auch die Archiv-Datei
# hier auftauchen koennte
FILES=$(find $VERZEICHNIS -maxdepth 1 -type f -name "preise.*" -mtime -$FRIST -p
rint)

if [ -n "$FILES" ] ; then
# Aufnahme ins Archiv
tar -r -f $ARCHIV.tar $FILES
rm -f $FILES
# Packen des Archivs
bzip2 -9 $ARCHIV.tar
fi

exit 0

Es sind noch einige Verbesserungsmöglichkeiten da, beispielsweise Exitcodes der tar- und bzip2-Kommandos checken und entsprechend melden, aber das Gerüst sollte so funktionieren. Allerdings habe ich jetzt nicht viel getestet - probier es mal aus.

Jochen
 

Stormbringer



Anmeldungsdatum: 11.01.2001
Beiträge: 1570
Wohnort: Ruhrgebiet

BeitragVerfasst am: 02. Nov 2002 8:55   Titel: Re: Dateien gemäß Alter archivieren lassen .....

Hallo Jochen,

ich kenne keine Jeanette ..... würde es sich lohnen sie zu kennen? ,-)
Aber vielen Dank für das Skript, ich werde es in den nächsten Tagen testen!!!

Gruß
_________________
Continuum Hierarchy Supervisor:
You have already been assimilated.
(Rechtschreibungsreformverweigerer!)
 
Benutzer-Profile anzeigen Private Nachricht senden

Jochen
Gast





BeitragVerfasst am: 04. Nov 2002 9:00   Titel: Re: Dateien gemäß Alter archivieren lassen .....

Jeanette war das Orkantief, das vor ein paar Tagen über Deutschland gezogen ist... Stormbringer!

Jochen
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy