Renaming Aufgabe Wer kann helfen?

M

musicgreator

Mitglied
Thread Starter
Dabei seit
19.01.2010
Beiträge
21
Reaktionspunkte
0
Hallo, ich suche nach einer automatisierten Lösung für folgende Aufgabe: Ich habe einen Ordner mit original Dateien und einen Ordner, welcher die Dateien in bearbeiterter Form und anderem Namen enthält. Nun möchte ich jeweils die Original Datei mit der bearbeiteten ersetzen, so dass die bearbeitete Danach den Namen der Original Datei trägt. Das entsprechend reine Umbenennen würde auch reichen. Der einzige Zusammenhang im Dateiname zwischen Original und bearbeiteter Version ist eine aufsteigende Nummer irgendwo im Dateiname. z.B. Original Ordner enthält Dataien: File 1 dd8629, File 2 99wncls, File 3 pp2nfjx. Bearbeiteter ordner enthält: Datei 59, Datei 60, Datei 61. In diesem Fall müsste z.B. File 1 dd8629 durch Datei 59 ersetzt werden, File 3 pp2nfjx durch Datei 61 usw. wie kann ich solch eine Aufgabe automatisieren?? DANKE IM VORRAUS!!!
 
Automator bietet keine Funktion um den gewünschten Dateinamen aus der entsprechenden Originaldatei auszulesen bzw. erstmal herauszufinden welche die entsprechende Originaldatei ist. Wie gesagt, in Originaldatei und Bearbeitung befindet sich irgendow eine Fortlaufende Nummer, diese ist jedoch nicht identisch, sondern nur fortlaufend. Ich hoffe, das ist so verständlich erklärt... Hat jemand so einen custom workflow bzw. action parat? Oder gibt es irgend ein Programm, welches Umbenennung basierend auf bestehenden Dateien durchführen kann?
 
Was fertiges weiss ich nicht. Idee: Da kannst du versuchen ein AppleScript (oder auch ein Shell-Script) zu machen. Ansatz: Wenn man voraussetzt, dass in beiden Ordnern genau gleich viele Dateien sind, die in ihrer nach Namen geordenten Reihenfolge (die aufsteigende Nummer sollte in beiden Ordnerm dafür sorgen) umbenannt werden sollen - also x-tes neues File bekommt Namen des x-ten alten Files - könnnte das in AppleScript so in der Art gehen
Code:
tell application "Finder"
	set theOldFiles to entire contents of (choose folder with prompt "Die Alten Files")
	set theNewFiles to entire contents of (choose folder with prompt "Die Neuen Files")
	set x to 1
	repeat with theFile in theNewFiles
		set name of theFile to (name of item x of theOldFiles)
		set x to x + 1
	end repeat
end tell

Damit bekommt das x-te File im neuen Ordner den Namen des x-ten Files im alten Ordner.

Halt mal so als Idee.
 
Cool, das könnte funktionieren. Also in die Gänsfüschen kommt der Pfad oder? Oder Gänsefüschen weglassen? Wenn soch also die Ordner auf dem Schreibtisch befinden, müsste das folgendermaßen aussehen oder müssen die x noch irgendwie ersetzt werde?:

ll application "Finder"
set theOldFiles to entire contents of (choose folder with prompt "Users/username/Desktop/Original Folder")
set theNewFiles to entire contents of (choose folder with prompt "Users/username/Desktop/Bearbeitet Folder")
set x to 1
repeat with theFile in theNewFiles
set name of theFile to (name of item x of theOldFiles)
set x to x + 1
end repeat
end tell

DANKE SCHONMAL FÜR DIE HILFE!!
 
Wenn du die Ordner fix angeben willst in deinem Skript - mit choose prompt in meinem Ansatz käme ein Auswahldialog -, dann so
Code:
set theOldFiles to entire contents of folder POSIX file "/Users/Username/Desktop/Original Folder"
set theNewFiles to entire contents of folder POSIX file "/Users/Username/Desktop/Bearbeitet Folder"
den Rest so belassen, das "x" zählt die _Nummer_ der Datei.
 
Haha, phantastisch. In einem ersten Test hat es funktioniert. Ich glaube wenn man sich auskennt, kann man viele coole Sachen machen :) Vielen Dank für die Hilfe!!
 
Zurück
Oben Unten