MacUser.de Community!
Zurück   MacUser.de Community! > Mac OS > Applescript und Automator


Dateien verschieben mit Applescript..

Antwort
 
Themen-Optionen
Alt 01-06-2005, 09:01   #1 (permalink)
Neues MU Mitglied
 
Registriert seit: 02.2005
Beiträge: 7
Dateien verschieben mit Applescript..

Hallo,

ich habe das Problem, dass ich noch kein osx 10.4 mit Automator habe und eine recht simple Aufgabe zu lösen ist.

Es sollen 6 Ordner ständig überwacht werden, in die Dateien kopiert werden können. Sobald eine Datei reinkommt soll sie auch gleich wieder mit Hilfe eines Applescript in einen anderen Ordner auf einem andere Rechner verschoben werden. D.h. kommt eine Datei in den Ordner "a" soll sie in einen anderen Ordner "A" auf einem anderen Rechner verschoben werden. Landet eine Datei im Ordner "b" soll sie in "B" verschoben werden. Und das Ganze soll als Endlosschleife funktionieren.

Ist doch mit einem Applescript mit Sicherheit ganz simpel zu lösen, oder?
Kann mir jemand von euch helfen?
               
in2ane ist offline   Mit Zitat antworten
Alt 01-06-2005, 09:06   #2 (permalink)
Neues MU Mitglied
 
Benutzerbild von macnum
 
Registriert seit: 04.2005
Ort: Karlsruhe
Beiträge: 75
Ob das irgendwie geht würde mich auch interessieren...

Aber kann man eigentlich irgendwie Dateien im Finder von einer Platte auf die andere verschieben (nicht kopieren!)? Da gibt's doch bestimmt ein Tastenkürzel das man gedrückt halten muss...
               
Signatur G4 466 Mhz | 1,12 GB RAM | Radeon Mac Edition 32 MB DDR | 60 GB HD | Pioneer DVD-RW DVR-105 | Iiyama Vision Master Pro 451 | OS X 10.4.6
macnum ist offline   Mit Zitat antworten
Alt 01-06-2005, 12:22   #3 (permalink)
Neues MU Mitglied
 
Benutzerbild von Stephan303
 
Registriert seit: 02.2004
Ort: Berlin
Beiträge: 73
hi,

hochschieb...
ist gerade aktuell auch mein problem:
von einem server soll ständig die aktuelle version eines ordners auf meinem rechner als kopie vorliegen. und, wenn ich nach der heimarbeit wieder im büro bin, sollen meine aktualisierungen automatisch auf den server gepackt werden. sehr komfortabel wäre noch eine jeweilige abfrage vorher ob ein download oder upload erfolgen soll.
unter windows gibts da ein programm (im system integriert) - ich glaub dokumentenmappe - das genau diese anforderungen erfüllt!

vielen dank für eure mühen, suche auch parallel nach einem script, bin aber selbst noch nicht so fit, das ich es gleich mal selbst schreiben würde...
stephan
               
Signatur a bientot tout va bien
Stephan303 ist offline   Mit Zitat antworten
Alt 03-06-2005, 08:21   #4 (permalink)
MU Mitglied
 
Benutzerbild von msslovi0
 
Registriert seit: 03.2005
Ort: Mainz
Beiträge: 2.701
Komisch das es hier noch keine Antwort gibt, noch nicht mal ein RTFM

Als kleiner Denkanstoß (irgendwie fehlt hier [applescript][...][/applescript], also muss es ohne Highlighting gehen):
Code:
on idle
	set folder_from to "hd_form:folder:"
	set folder_to to "hd_to:folder:"
	set folderlist to list folder alias folder_from
	try
		repeat with x in folderlist
			if x does not start with "." then
				tell application "Finder"
					try
						move document file (folder_from & x as alias) to folder (folder_to as alias)
					on error
						beep
					end try
				end tell
			end if
		end repeat
	end try
	return 60
end idle
folder_from ist der Ordner, in dem sich die Daten ursprünglich befinden, folder_to der Zielordner

In Zeile 6 wird der Ursprungsordner durchlaufen und in Zeile 10 versucht, jede Datei, auf die das Script trifft, an die Zieldestination zu kopieren. Klappt das nicht, wird ein Beep ausgegeben (man könnte da auch mit Fehlermeldungen, Errorlog o.ä. arbeiten, ihr wollt ja aber auch was machen). Vorher wird in Zeile 7 noch überprüft, ob die Datei mit einem Punkt beginnt, um diese im Finder versteckten Dateien (wie etwa .DS_Store) nicht mit zu kopieren.

Das ganze stecken wir dann in einen idle und legen mit return in Zeile 18 fest, in welchen Abständen das Script laufen soll (in diesem Fall alle 60 Sekunden).

Natürlich könnte man da noch einiges optimieren, so prüft das Script derzeit nicht, ob die Datei im Urpsrungsordner auch schon wirklich komplett übertragen ist oder ob der Urpsrungs- und Zielordner überhaupt existieren (was gerade bei gemounteten Netzwerkvolumes ganz hilfreich wäre).

Matt
               

Geändert von msslovi0 (03-06-2005 um 08:22 Uhr).
msslovi0 ist offline   Mit Zitat antworten
Alt 03-06-2005, 16:16   #5 (permalink)
MU Mitglied
 
Benutzerbild von eml2306
 
Registriert seit: 03.2005
Beiträge: 272
Zitat:
Zitat von in2ane
Hallo,

ich habe das Problem, dass ich noch kein osx 10.4 mit Automator habe und eine recht simple Aufgabe zu lösen ist.

Es sollen 6 Ordner ständig überwacht werden, in die Dateien kopiert werden können. Sobald eine Datei reinkommt soll sie auch gleich wieder mit Hilfe eines Applescript in einen anderen Ordner auf einem andere Rechner verschoben werden. D.h. kommt eine Datei in den Ordner "a" soll sie in einen anderen Ordner "A" auf einem anderen Rechner verschoben werden. Landet eine Datei im Ordner "b" soll sie in "B" verschoben werden. Und das Ganze soll als Endlosschleife funktionieren.

Ist doch mit einem Applescript mit Sicherheit ganz simpel zu lösen, oder?
Kann mir jemand von euch helfen?
Was Du beschreibst ist ein gefundenes Fressen für die Ordneraktionen. Wenn Du das als Skript speicherst und als Ordneraktion aktivierts, wirst Du bei jedem Element gefragt, wo es hin soll, und dann wird es in diesen Ordner verschoben.

Was noch zu tun ist:
  • Fest verdrahten der jeweiligen Zielordner, d.h. Du brauchst sechs Fassungen des Skripts und mußt in jede explizit den Zielordner reinschreiben
  • Verschieben in nicht-lokalen Ordner, das sollte aber je nach Art des entfernten Ordners kein Thema sein, weil der sich ja irgendwo in /Volumes tummeln dürfte.


Code:
property dialog_timeout : 30 -- set the amount of time before dialogs auto-answer.

on adding folder items to this_folder after receiving added_items
	display dialog "Skript läuft"
	try
		tell application "Finder"
			--get the name of the folder
			set the folder_name to the name of this_folder
			set the target_folder to choose folder with prompt "Zielordner auswählen"
			repeat with curr_item in added_items
				move curr_item to target_folder
			end repeat
		end tell
	end try
end adding folder items to
               

Geändert von eml2306 (03-06-2005 um 16:20 Uhr).
eml2306 ist offline   Mit Zitat antworten
Alt 03-11-2005, 18:25   #6 (permalink)
MU Mitglied
 
Benutzerbild von NiLS-Da-BuBi
 
Registriert seit: 11.2003
Ort: Hamm / Siegen
Beiträge: 601
Hallo,

das ist momentan auch mein Problem - ich habe zwar Automator möchte da aber nicht jedesmal starten. Ich möchte gerne jede datei die mit istock*.* in meinen Bilderordner verschieben alle andern können dort bleiben. Wie kann ich das mit den Ordneraktionen und dem Skript oben hinbekommen?
               
NiLS-Da-BuBi ist offline   Mit Zitat antworten
Alt 04-11-2005, 20:09   #7 (permalink)
MU Mitglied
 
Benutzerbild von chebfarid
 
Registriert seit: 10.2005
Ort: Milano
Beiträge: 693
Ciao,
ich denke Du brauchst einfach nur das Skript von eml2306 leicht zu verändern. Ich hab allerdings nicht genau verstanden, welche Files du verschieben willst: alle deren Namen "istock" enthalten?
Falls dem so ist, sollte dies funktionieren:
Code:
on adding folder items to this_folder after receiving added_items
tell application "Finder"
set the target_folder to pfad_zum_Bildordner
repeat with curr_item in added_items
set n to name of curr_item
if "istock" is in n then                        
move curr_item to target_folder
end if
end repeat
end tell
end adding folder items to
Skript speichern und als Ordneraktion an Deinen Arbeitsordner hängen, fertig.

Buon scripting
Farid
               
chebfarid ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dateien verschieben gulup_jamun Mac OS X 4 14-10-2006 18:41
Dateien vom PC auf Mac verschieben superguppy Netzwerkhardware 7 28-04-2006 17:42
Geöffnete Dateien verschieben? BalkonSurfer Mac OS X 12 30-10-2005 14:09
Dateien verschieben tzztmm Mac OS X 5 09-07-2005 18:38

Alle Zeitangaben in WEZ +1. Es ist jetzt 00:13 Uhr.


Hilfe? MacUser.de Übersicht


Impressum | Werbung bei MacUser.de
MacUser.de © 2001-2009. All rights reserved

MacUser.de Hosted by
  hosteurope