Löschjob

M

Maver

Mitglied
Thread Starter
Dabei seit
04.03.2005
Beiträge
45
Reaktionspunkte
0
Hallo,

ich habe einen Ordner in den ich in unregelmäßigen Abständen Daten hineinschiebe. Diese sollen dann genau 7 Tage dort bleiben und anschließend automatisch gelöscht werden. Hat jemand von Euch eine Idee, wie ich das bewerkstelligen kann.

Gruß

Maver
 
Ciao, Grüße aus dem verregneten Süden und ein Tip zur Lösung deines Problems. Du solltest mit zwei Scripts arbeiten:
a) das erste, am praktischsten in Form einer Folder Action, die Du an den Ordner hängst, in dem die Files für eine Woche geparkt werden sollen, ändert das Modification Date (ich hab ein englisch/italienisches System, auf deutsch heißt das denke ich Bearbeitungsdatum). Auf diese Weise kann der Finder dann anhand dieses Datums überprüfen, welche Files älter als 7 Tage sind.
b) das zweite solltest Du als Application abspeichern und an die Prozesse anhängen, die beim täglichen einloggen automatisch ausgeführt werden (System Preferences->Accounts->Login Items).

Skript 1:
Code:
on adding folder items to this_folder after receiving these_items
	tell application "Finder"
		repeat with anItem in these_items
			set modification date of anItem to (current date)
		end repeat
	end tell
end adding folder items to

Skript2:
Code:
tell application "Finder"
	set f to folder "deine_Harddisk:Users:dein_Name:dein_Ordner"
	set theItems to every item of f
	repeat with anItem in theItems
		if modification date of anItem < ((current date) - 604800) then
			move anItem to trash
		end if
	end repeat
end tell

Wenn Du die Files gleich komplett verschwinden lassen willst, kannst du hinter "end repeat" noch eine Zeile mit "empty trash" einfügen, aber vielleicht willst Du beim ersten Mal ja erst mal schauen on alles glatt gegangen ist ;)

Good scripting
Farid
 
Zuletzt bearbeitet:
Hallo,
gruß in den Süden und erstmal vielen Dank. Denke ich habe es soweit verstanden und sieht einleuchtend aus. Kleine Frage bleibt dennoch bestehen und zwar zum 1 Skript. Wie hänge ich dieses an den Ordner ran. Ich habe es so verstanden, das dieses im Hintergrund läuft und alles was in den Ordner geschoben wird, das aktuelle Datum als Bearbeitungsdatum erhält. Also nur das was neu hinzu kommt, das was drin ist behält sein Datum. Ist das richtig.

Gruß

Maver
 
Maver schrieb:
Also nur das was neu hinzu kommt, das was drin ist behält sein Datum. Ist das richtig.
Absolut richtig :)

Das Anhaengen einer Folder Action (weiss nicht wie die auf deutsch heissen) an einen Ordner kannst Du sehr einfach mit einem CTRL+Klick (oder mit der rechten Maustaste) auf den gewuenschten Ordner bewerkstelligen. Am besten speicherst Du vorher das erste Skript in /Library/Folder Actions/ ab - das ist die Standardposition in der AppleScript nach Folder Actions sucht.

Good scripting
Farid
 
Zuletzt bearbeitet:
hi chebfarid,

und wie hänge ich dieses script an den Ordner ran. Das heißt woher weiß der Unterordner oder die Datei, das das Bearbeitungsdatum geändert werden soll?

Gruß

Maver
 
Maver schrieb:
hi chebfarid,

und wie hänge ich dieses script an den Ordner ran. Das heißt woher weiß der Unterordner oder die Datei, das das Bearbeitungsdatum geändert werden soll?

Gruß

Maver

ctrl-klick auf den ordner und dann die ordneraktion aktivieren und konfigurieren...
 
Danke für die Anleitung, sowas wollte ich auch schon länger mal machen clap
 
Eine Frage noch:

Wie muss ich den folder beschreiben (Ort), wenn sich der Folder auf einem anderen Mac oder Server befindet.

Vielen Dank

Maver
 
Sitze im Moment vor einem Win2000-Rechner, deshalb ohne Gewaehr:

Mac-Path (vorausgesetzt File Sharing ist aktiv): "Name_Mac:Name_Ordner:"
(Vielleicht funktioniert auch: IP_Nummer_NetzwerkMac:Name_Ordner: ?)

oder
Unix-Path: "/Network/Name_Server/Name_Ordner/"

Good scripting
Farid
 
Vielleicht kurz zur Info:

Der Ordner befindet sich auf einem Windows 2003 Server.

Für Skript 1:
kein Problem, kann man ja vor dem Kopieren auf dem Mac machen:
Neue Frage: Automatische Kopieranweisung vom Mac in den Ordner auf dem Windows Server?

Für Skript 2:
Geht das überhaupt, das man einen Windows Ordner vom Mac löschen kann. Benutze smb Verbindung? Wenn ja würde mir halt die bezeichnung weiterhelfen.

Trotzdem 1000Dank für die bis jetzt geleistete Hilfe

Gruß

Maver
 
Zuletzt bearbeitet:
Maver schrieb:
Vielleicht kurz zur Info:
Der Ordner befindet sich auf einem Windows 2003 Server.

Ich fuerchte damit hat sich der Fall erledigt :rolleyes: :
Folder Actions auf einem Windows-Rechner sind totally ausgeschlossen!
Das zweite Skript liesse sich zur Not noch machen, aber wenn Du keine Moeglichkeit hast, das Bearbeitungsdatum zu veraendern - und darauf baut ja der gesamte Ablauf auf - hat das wenig Sinn.

Unter Win koenntest Du dir was mit Visual Basic stricken, aber von VB habe ich leider keine Ahnung...

Good luck!
Farid
 
Wie gesagt, bevor ich es auf den Windows Server schiebe kann ich sie ja in einen Durchgangsordner auf dem Mac schieben (Folder Actions) und von dort aus dann automatisch oder manuell auf den Windows Server schieben. Dadurch muss sich das Änderungsdatum doch auch bearbeiten lassen.

Die frage ist halt nach dem Zugang oder Beschreibung zum Windows Server.

Gruß

Maver
 
Du hast recht: wenn Du die Moeglichkeit hast, mit einem Zwischenordner auf dem Mac zu arbeiten, muesste es klappen. Der Path zum Ordner auf dem Windows-Rechner sollte dann so sein wir der Unix-Path oben:
/Network/Name_Server/Name_Ordner/
Mit ein bischen Try&Error muesstest Du das hinkriegen ;)

Good scripting
Farid
 
Zurück
Oben Unten