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

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Skript HILFE!!! Dateien archivieren und Zippen

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Software
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Janine
Gast





BeitragVerfasst am: 28. Mai 2004 11:46   Titel: Skript HILFE!!! Dateien archivieren und Zippen

Hallo

Ich soll ein UNix Skript schreiben das Dateien die 1 Jahr nicht angefasst wurden in einen Ordner verschiebt und den dann zippt. Dateien die 2 Jahre nicht angefasst wurden sollen automatisch gelöscht werden.

Hat da jemand von euch Ahnung von wie man das macht? Habe gerade erst mit UNix angefangen und noch keine wahre Ahnung wie ich das genau mache...

wohl irgendwas mit "if; tar; find; mtime"....
 

Stormbringer



Anmeldungsdatum: 11.01.2001
Beiträge: 1570
Wohnort: Ruhrgebiet

BeitragVerfasst am: 28. Mai 2004 13:14   Titel:

Vielleicht hilft Dir dies:
http://www.pl-forum.de/forum/viewtopic.php?t=1020813

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

jwm



Anmeldungsdatum: 27.09.2000
Beiträge: 28

BeitragVerfasst am: 28. Mai 2004 14:20   Titel:

find / -mtime +730-exec rm {} \;
find / -mtime +364 -exec mv {} /ordner/deiner/wahl \;
tar czvf /pfad_zum_BU /ordner/deiner/wahl

Kann man bestimmt noch schön in Schleifen etc packen Smile
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

Janine
Gast





BeitragVerfasst am: 01. Jun 2004 7:25   Titel:

Mein Skript sieht bis jetzt so aus:

#!/bin/sh

if find /home/janine/Archiv -mtime +365
then
mv /home/janine/Archiv Neues/Verzeichnis
tar -cvs Archivdatei.tar
fi


Aber bis jetzt packt er alle Dateien und nicht
 

Gast






BeitragVerfasst am: 01. Jun 2004 7:26   Titel:

...die die 365 Tage alt sind
 

Lateralus
prolinux-forum-admin


Anmeldungsdatum: 05.05.2004
Beiträge: 1238

BeitragVerfasst am: 01. Jun 2004 9:43   Titel:

Code:

if find /home/janine/Archiv -mtime +365
then
mv /home/janine/Archiv Neues/Verzeichnis


Also then wird ausgeführt, wenn der Wert nach if ungleich Null...
Halte dich lieber an die Syntax von jwm:

Code:

find / -mtime +364 -exec mv {} /ordner/deiner/wahl \;


also auf dich übertragen

Code:

find /home/janine/Archiv -mtime +365 -exec mv {} /home/janine/Archiv Neues/Verzeichnis;


(mit den geschweiften Klammern kann ich allerdings nichts anfangen, aber er wird schon wissen, was er tut.)
 
Benutzer-Profile anzeigen Private Nachricht senden

Janine
Gast





BeitragVerfasst am: 01. Jun 2004 12:16   Titel:

Also im Moment sieht mein Skript genau so aus wie oben...
Aber es funktioniert leider trotzdem noch nicht...
 

Lateralus
prolinux-forum-admin


Anmeldungsdatum: 05.05.2004
Beiträge: 1238

BeitragVerfasst am: 01. Jun 2004 12:40   Titel:

bekommst du ne fehlermeldung oder macht er einfach nicht das, was er soll?
 
Benutzer-Profile anzeigen Private Nachricht senden

jwm



Anmeldungsdatum: 27.09.2000
Beiträge: 28

BeitragVerfasst am: 01. Jun 2004 15:07   Titel:

a) die geschweiften Klammern stehen "stellvertretend" für den Namen der Datei(en), die find zurückliefert.

b) darum funktioniert das if-Konstrukt auch nicht, sondern sollte etwa so aussehen:

for i in $(find /home/janine/Archiv -mtime +365); do
mv /home/janine/Archiv/$i /Neues/Verzeichnis
tar cvsf Archivdatei.tgz /Neues/Verzeichnis
done
 
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen

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

 
Gehen Sie zu:  

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