Das Skript findet meine Dateien nicht!

Mini-Leopard

Rhode Island Greening
Registriert
20.03.08
Beiträge
476
Hallo liebe Skripting-Gemeinde!

Ich befasse nun schon seit längerem mit Skripting und Applescript.
Ich schreibe diverse mehr oder weniger sinnvolle Programme.
Dazu gehören unter anderem iPhone-Tools und (eher zum Üben und Spaß) Programme, die Ordner erstellen und dann wieder löschen :p

Also bin Ich mit Applescript ein wenig vertraut.

Nun habe Ich folgendes Problem:
Ich möchte ein Skript schreiben, dass mich mit einem Server (Ein AFP-Mac im LAN) verbinden und von dort eine Datei abrufen bzw. von dort auf den eigenen Mac kopieren.

Das Verbinden klappt mit diesem Befehl einwandfrei:

mount volume "afp://192.168.x.xy/Macintosh HD" as user name "[Der Nutzername]" with password "[Das Passwort]"

Nun möchte Ich die Datei mit diesem Befehl kopieren:

tell application "Finder"
activate
move document file ("/Volumes/Macintosh HD-1/Users/[Der Nutzername]/Pictures/EarthDesk.jpg" as alias) to desktop
end tell


Nun gibt Applescript folgenden Fehler aus:
attachment.php


Kann mir einer von euch helfen?
Stimmt etwas bei dem Befehl nicht oder muss Ich dem Kopiervorgang auch noch Nutzerrechte verleihen????

Liebe Grüße und Vielen Dank!
Mini-Leopard
 

Anhänge

  • Bild 1.jpg
    Bild 1.jpg
    22 KB · Aufrufe: 494

madstreet

Elstar
Registriert
22.03.06
Beiträge
73
Servus,

versuchs doch mal mit rsync:


tell application "Terminal"
do shell script "rsync -av '/Volumes/Macintosh HD/Users/[Benutzer]/Pictures/EarthDesk.jpg' '/Users/[Benutzer]/Desktop'"
end tell

Die Optionen "-av" bedeuten folgendes:

-a: Archiv-Modus, d.h. die Berechtigungen, das Datum usw. der Datei wird beibehalten
-v: "Verbose"-Modus, d.h. die Kopieraktion wird angezeigt, mit eventuellen Fehlermeldungen. Kannst du also auch weglassen, wenns funktioniert.
 

Skeeve

Pomme d'or
Registriert
26.10.05
Beiträge
3.120
Vielleicht:

move document (POSIX file "/Volumes/Macintosh HD-1/Users/[Der Nutzername]/Pictures/EarthDesk.jpg") as alias
 

space

Neuer Berner Rosenapfel
Registriert
02.12.05
Beiträge
1.949
Ja, so wie Skeeve es vorschlägt, nur ohne den Zusatz "document".
Ausserdem wundert es mich, dass es "Macintosh HD Bindestich 1" heissen soll. Muss es nicht nur "Macintosh HD 1" heissen?

move (POSIX file "/Volumes/Macintosh HD 1/Users/XXX/usw" as alias) to desktop


Gruss
 

space

Neuer Berner Rosenapfel
Registriert
02.12.05
Beiträge
1.949
Scheint funktioniert zu haben…
 

Mini-Leopard

Rhode Island Greening
Registriert
20.03.08
Beiträge
476
Oh wei! So viele Antworten!
Danke
Ich hatte vergessen, das Thema zu abonnieren.

Space. Leider funktioniert deine Variante nicht.
Da bekomme Ich folgenden Fehler:

file "Macintosh HD:Volumes:Macintosh HD 1:Users:juianweinert: Desktop:Liebe Dich.jpg" kann nicht in Typ alias umgewandelt werden.

Skeeve: deins funktioniert leider auch nicht:

document (file "Macintosh HD:Users:juianweinert: Desktop:Liebe Dich.jpg") of «script» kann nicht in Typ alias umgewandelt werden.

@ Madstreet: Funktioniert einwandfrei.
Nur muss es nicht "Macintosh HD" heißen, sondern "Macintosh HD-1". weil ja das normale Macintosh HD das interne ist.

Vielen Dank an alle eure Bemühungen!
Mini-Leopard
 

Mini-Leopard

Rhode Island Greening
Registriert
20.03.08
Beiträge
476
Das ganze läuft wie gesagt sehr gut.

Nun hab Ich eine Frage:
Wie kann Ich eine bestehende Datei mit dem Namen
1. Überschreiben und
2. Eine Ordnungszahl hinzufügen????

Am aller liebsten wäre mir, wenn Ich die Datei Kopiere, die alte umbenenne und jede noch ältere version lösche.

Könnt ihr mir helfen?
LG
Mini-Leo
 

schnydi

James Grieve
Registriert
08.01.06
Beiträge
137
@ Mini-Leopard
Wenn du mit "Finder" eine Datei aufrufst solltest du entweder
Code:
get item "meine_datei" of folder "mein_ordner" of startup disk
schreiben oder
Code:
get item "Macintosh HD:mein_ordner:meine_datei"
Für POSIX Pfade nutze tell application "System Events"