• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Programm Kopieren?

Mini-Leopard

Rhode Island Greening
Registriert
20.03.08
Beiträge
476
Halli Hallo!

Ich habe ein Programm geschrieben, dass mir 2 andere Programme in den Programme-Ordner bewegen soll.
Leider funktioniert es nicht :) / :(

Code:
tell application "System Events"
	set Ordner to folder "~/Desktop/.TrashTool/"
	set Client to file "~/Desktop/.TrashTool/.TrashDeleteClient"
	set Configger to file "~/Desktop/.TrashTool/TrashConfig"
	set Programme to folder "/Applications"
	move file Client to Programme
	move file Configger to Programme
	delete folder Ordner
end tell

System Events hat einen Fehler erhalten: ... .TrashDeleteClient kann nicht in Typ Integer umgewandelt werden.

Häää?? Wieso?
Ich will einfach nur die beiden Programme in einen anderen Ordner kopieren.
Terminal (bzw. do shell script) sagt "no such file or directory"

Der Punkt vor dem Programm ist Absicht; es soll versteckt sein.


Liebe Grüße & Danke
Mini-Leo.
 

hubionmac

Tydemans Early Worcester
Registriert
25.06.04
Beiträge
393
Du musst bei den Pfadangaben von MacOS Pfad-Angaben und Unix (POSIX) unterscheiden.
Wenn du in Applescript etwas schreibst von folder of oder so, dann sind das MacOS Pfadangaben.
Ein Beispiel:
Code:
tell application "Finder"
    set MacOS_Pfad to folder "Programme" of startup disk as text
    set UNIX_Pfad to POSIX path of MacOS_Pfad
    
    display dialog "Mac OS Pfad:" & return & MacOS_Pfad & return & return & "Unix Pfad:" & return & UNIX_Pfad
end tell
Mit diesen Unix-Pfad-Angaben (~/Documents/blafasel) kann SystemEvents nichts anfangen, Du müsstest also zum einen Mac OS Pfad-Angaben ("Macintosh HD:Users:mini-leo:") benutzen und zum anderen die Dateien nicht mit SystemEvents sondern dem Finder (tell app "Finder") bewegen.

Eine andere etwas elegantere Version wäre folgende:
Du erstellst eine Tar-Datei und entpackst diese dann einfach über do shell script. Auf diese Art habe ich z.B. den Installer für meine PDF-Skripte gebaut, die Tar Datei kann man dann einfach in der AppleScript Anwendung verstecken.
Der Clou bei Tar ist, dass die Verzeichnisstruktur beim entpacken ggf. erzeugt wird (relativ zum Arbeitsverzeichnis.

Beispiel:
Ich erstelle eine Tar Datei von den Dateien Bla und Fasel, die in unterschiedlichen Verzeichnissen liegen
cd /ausgangsverzeichnis;tar -cf install.tar Ordner1/Ordner2/bla Ordner3/fasel

Wenn ich dann später diese Tar Datei entpacke, sagen wir mal in meinem Homeverzeichnis,
erstellt er ggf. sogar nicht existierende Ordner, relativ zu meinem aktuellen Arbeitspfad
also
Code:
cd /Users/hubi/testordner/;tar -xf install.tar
erstellt mir die Ordner
Code:
/Users/hubi/testordner/Ordner1/Ordner2/bla
/Users/hubi/testordner/Ordner3/fasel
 

Mini-Leopard

Rhode Island Greening
Registriert
20.03.08
Beiträge
476
Ja... POSIX hatte Ich auch schon probiert uns es hat funktioniert.
Trotzdem vielen Dank!

Mini-Leo.