als Applescript-Rookie würde ich gerne folgendes Problem lösen:
Ich möchte jeweils die gleich benannte Datei (z. B. Klausur_1) aus einem Klassenordner mit n Schülerordnern kopieren und in einen neu gemachten Schülerordner im Zielordner kopieren.
Anders gesagt:
In einem Klassenlaufwerk befinden sich n Schülerordner, in denen sich jeweils die Klausurdatei (bei allen gleich benannt) befindet. Es sollen im Zielordner n Schülerordner generiert werden, in die dann die jeweilige Klausurdatei hineinkopiert werden soll. (Die Datei befindet sich jeweils in einem Schülerordner im Ordner "Documents". Den Ordner Documents zu finden gelingt denke ich auch!??? ..aber wie gesagt, das kopieren klappt nicht.
Was bereits funktioniert ist aus der Wahl des Klassenordners und des Zielordners die jeweiligen Unterordner zu generieren. (Die jeweiligen Unterordner im Schülerordner sollen nicht mit neu angelegt werden!)
Was ich absolut nicht hinbekomme, ist das kopieren der Datei in den (gerade neu angelegten) Schülerordner.
Daher mein Hilferuf!!!!
Es folgt mein Script, soweit ich es versucht habe... (im Händler openSubFolder versuche ich zu kopieren)
Mit hilfesuchenden Grüßen
Bernd Kühn
(Dieser Beitrag wurde von berndkuehn am 1. Okt 2017, 20:47 geändert)
Klausur aus Schülerordner(aus Klassenordner) in neu zu erstellenden Schülerordner (im Zielordner) kopieren
herzlich willkommen im AppleScript-Forum auf HilfDirSelbst! :-)
Ich habe kurz versucht, das Problem nachzuvollziehen. Erfolglos, weil mir nicht klar ist, was genau geschehen soll.
Was enthält der Quellordner? Ordner, okay. Aber wie sind die benannt? Und was enthalten sie? Wo befinden sich die zu kopierenden Dateien? Ist ihr Name wirklich nur "Klausur_1"? Ohne Suffix?
Gruss, Hans
Klausur aus Schülerordner(aus Klassenordner) in neu zu erstellenden Schülerordner (im Zielordner) kopieren
Also der Quellordner ist ein Ordner einer Klasse. In diesem Ordner befinden sich n Schülerordner, in denen sich wiederum Ordner und Dateien befinden. Ich mal mal nen Baum...
ich hoffe, so ist es deutlicher erklärt?! In jedem Schülerordner können sich diverseste Dateien und Ordner befinden, ich bin aber nur am Ordner Documents interessiert, da in DIESEM Ordner meine gesuchte Datei befindet!
Hmmm... der Dateiname ist natürlich mit Suffix, ist aber nicht zu sehen. Korrekt muss er dann lauten "Klausur 1.xlsx"
Nochmals DANKE
Bernd
(Dieser Beitrag wurde von Hans Haesler am 2. Okt 2017, 21:00 geändert)
Klausur aus Schülerordner(aus Klassenordner) in neu zu erstellenden Schülerordner (im Zielordner) kopieren
jetzt habe ich das Script zum Laufen gebracht. Und auch etwas optimiert.
Es werden direkt die Ordner aufgelistet. Dann ist es nicht mehr notwendig, die Art des Items zu prüfen. Wenn sich der Ordner "Documents" immer auf der ersten Ebene des "Schülerordners befindet, kann das Finden der Datei vereinfacht werden.
Der try-Wickel ist verschoben. Jetzt verhindert er ein Problem, wenn im Zielordner schon ein gleichnamiger Ordner existiert.
Gruss, Hans
Klausur aus Schülerordner(aus Klassenordner) in neu zu erstellenden Schülerordner (im Zielordner) kopieren
ich bin schwer beeindruckt!!! Ganz Herzlichen Dank für deine Hilfe! Das Script läuft nicht nur super, sondern ist auch viel übersichtlicher und auch ICH verstehe, was passiert.
.."etwas optimiert" ist stark untertrieben! Ich finde es sehr viel "schöner", da der ganze andere Ballast wegfällt.
Ich wusste bisher noch nicht, dass es "Properties" gibt und auch nicht, dass das Anlegen des neuen Ordners so elegant in einem Rutsch möglich ist! Klasse!!!
Wo kann man das lernen? ... seufz
Jetzt werde ich noch probieren, den "property klausurname"n per choose einzulesen, so dass ich ihn nicht immer neu ins script eingeben muss.
Dir noch einmal ganz herzlichen Dank! Was kann ich dir Gutes dafür tun?
Lass es mich bitte wissen.
Herzliche Grüße
Bernd Kühn
(Dieser Beitrag wurde von Hans Haesler am 2. Okt 2017, 21:01 geändert)
Klausur aus Schülerordner(aus Klassenordner) in neu zu erstellenden Schülerordner (im Zielordner) kopieren
bitte sehr. Doch ich habe eine Bitte: Nicht den ganzen Beitrag des Vorredners nochmals posten. Ich habe mir erlaubt, diese Abschnitte zu entfernen.
Der Unterschied zwischen 'global' und 'property': – Mit 'global' kann eine Variable definiert werden, damit sie auch in einem Handler erkannt wird. Aber: Man muss ihr zusätzlich einen Wert zuweisen. Der Fachausdruck dafür ist 'initialisieren':
– Dank 'property' kann das auf einmal geschehen.
Doch wenn kein Handler aufgerufen wird, braucht es eigentlich weder 'global' noch 'property'. Das Initialisieren genügt.
Mit 'choose file' kann man das so machen:
Es gibt Bücher, Foren, Beispiel-Scripts ...
Als ich 1994 damit anfing, gab es nur das Buch "The Complete AppleScript Handbook" von Danny Goodman. Dem Buch beigelegt war eine 3.5-Inch-Diskette, welche das AppleScript-Programm enthielt. Das musste man selber auf dem Mac installieren, weil damals noch nicht mitgeliefert ...
Davon bekomme ich allerdings keinen Cent. Im Gegenteil: Ich spende selber jedes Jahr CHF 100.– Doch das ist es mir wert, allein schon, weil das Forum ein wertvolles "Nachschlagewerk" ist.
Gruss, Hans
Klausur aus Schülerordner(aus Klassenordner) in neu zu erstellenden Schülerordner (im Zielordner) kopieren
ich danke dir für deine zusätzlichen und hilfreichen Erläuterungen!
Die Spende ans Forum werde ich mit einer Vollmitgliedschaft umsetzten. Damit wird das Forum - so denke ich - doch auch unterstützt, nicht wahr? (davon hast du zwar nicht direkt etwas, aber wenn es ok für dich ist..)