• 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

Das Erstellungsdatum mehrerer Datein auf einmal ändern

  • Ersteller FlixDaCat
  • Erstellt am

FlixDaCat

Gast
Hallo
Ich habe zwar durch die Suche einige Beiträge zu diesem Thema gefunden, aber so richtig zufrieden gestellt hat mich kein Vorschlag.

Ich würde gerne unter Tiger -am Besten mit einem einfachen Tool- mehrere Erstellungsdaten auf einmal ändern. Es handelt sich bei den Datein um Fotos. Den ExifRenamer habe ich schon bemüht, aber der ändert ja nur die Dateinamen, wenn ich das richtig sehe, oder täusche ich mich da.
Kann mir hier irgenjemand eine Vorgehensweise empfehlen?

Vielen Dank im Voraus

Gruß Felix
 

KayHH

Gast
Moin pete,

pete schrieb:
ändert das Zugriffs- und Modifikationsdatum. Ich glaube auch, er will das Erstellungsdatum in den Exif-Daten ändern, oder? Ich verstehe seine Frage zumindest so.


Gruss KayHH
 

FlixDaCat

Gast
Oh Super!
Wenn mir jetzt noch jemand 1. erklären würde wie ich das Programm benutze und 2. die Besonderheit der EXIF Daten erklärt bin ich glücklich.

Danke und Gruß
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
FlixDaCat schrieb:
die Besonderheit der EXIF Daten erklärt bin ich glücklich.
EXIF Daten sind keine einfach änderbaren Attribute von Dateien (wie Name, Änderungsdatum oder Etikett), sondern sind in die Datei eingebettete Daten.
(So als ob du in einem Text in der Überschrift das Datum einträgst, an dem du ihn geschrieben hast.)

'touch' kann das gewünschte nicht leisten.
Das greift nicht in den Inhalt von Dateien ein, sondern ändert nur Informationen, die woanders *über* die Datei vermerkt werden.
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
pete schrieb:
Damit das nicht weiter zur Verwirrung führt, nehme ich den AppleScript-Code und das Droplet aus diesem Thread wieder raus und hänge ihn in meinen AppleScript-Beispiel-Thread.

Moin Pete,

nö, lass doch mal, ich denke, das könnte man relativ einfach umstricken, wenn man ein Commandline-Tool wie 'jhead' verwendet - einfach noch eine Abfrage nach dem gewünschten Datum rein und das on dotouch ... durch ein on dojhead .. ersetzen.

Grüße

Daisy
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
pete schrieb:
Jetzt habe ich es schon umgehängt. Aber kein Problem, wenn der Code abgeändert ist und den Zweck erfüllt, der hier gewünscht ist, kann es ja wieder hier rein.

Gruß, Pete

Alles klar - hier isses. Damit es funktioniert, musst Du vorher das Commandline-Tool 'jhead' installieren - das gibt's hier:

http://www.sentex.net/~mwandel/jhead/

Dann das Script im Scripteditor als Programm speichern und los geht's.

Wichtig: Wie immer empfehle ich, das erst mal ausgiebig zu testen (Bilder voher backuppen) - ich übernehme keine Garantie ;)

Credits: Pete für das zugrundeliegende AppeScript und Matthias Wandel für sein schönes Commandline-Tool :)

P.S. jhead kann noch andere schöne Sachen - z.B. Datum oder Zeit relativ ändern. Dafür müsste man das Script dann ggfs. etwas umbasteln. Alle Optionen gibt's mit 'jhead -h'

Grüße,

Daisy

Code:
global newDate

on run
    open (choose folder)
end run

on open prmDropList
    set isJheadIstalled to do shell script "echo `which jhead | tail -n1| grep no`"
    
    if (isJheadIstalled is equal to "") then
        set newDate to text returned of (display dialog "Bitte neues Erstellungsdatum eingeben" default answer "yyyy:mm:dd-hh:mm:ss")
        -- bei Bedarf könnte (sollte?) man im folgenden natürlich noch viel mehr Error-Handling einbauen
        if (length of newDate is equal to 19) then
            processList(prmDropList)
        else
            display dialog "Das Datum wurde nicht richtig eingegeben" with icon caution
        end if
        
    else
        display dialog "jhead wurde nicht (richtig) installiert" with icon caution
    end if
end open

on dosetdate(prmAlias)
    do shell script "jhead -ts" & newDate & space & the quoted form of (POSIX path of prmAlias)
end dosetdate

on processList(prmDropList)
    repeat with varItem in (prmDropList as list)
        my processItem(varItem)
    end repeat
end processList

on processItem(prmItem)
    if (prmItem as string) ends with ":" then
        my processFolder(prmItem)
    else
        my processFile(prmItem)
    end if
end processItem

on processFolder(prmFolder)
    set itemList to list folder prmFolder without invisibles
    repeat with varItem in itemList
        my processItem(((prmFolder as string) & (varItem as string)) as alias)
    end repeat
end processFolder

on processFile(prmFile)
    dosetdate(prmFile)
end processFile
 
Zuletzt bearbeitet:

FlixDaCat

Gast
Danke!
Aber wie kann ich das Proggi genua verwenden, bzw. was muss ich tun, um es zu verwenden?
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
FlixDaCat schrieb:
Danke!
Aber wie kann ich das Proggi genua verwenden, bzw. was muss ich tun, um es zu verwenden?
Hi FlixDaCat,

also du brauchst die ganz ausführliche Anleitung? ;)

1. Du lädtst die richtige jhead-Version runter:
http://www.sentex.net/%7Emwandel/jhead/os-x/jhead

die liegt dann auf dem Schreibtisch , heisst 'jhead' und ist ca 60 kB groß


2. Du öffnest das Programm 'Terminal' (befindet sich im Dienstprogramme-Ordner)
- hier tippst du:
Code:
sudo cp ~/Desktop/jhead /usr/bin/
Das kopiert jhead an die richtige Stelle. Dafür benötigst du dein Administrator-Passwort.

- dann tippst du:
Code:
sudo chmod 755 /usr/bin/jhead
- jetzt hast du jhead installiert. Kontrolliere das zur Sicherheit, indem du ein neues Terminal-Fenster öffnest und eingibst: 'jhead -h' . Das sollte eine Liste aller jhead-Optionen ausspucken. Falls ok, kannst du das Terminal beenden.


3. Du öffnest das Programm 'Skripteditor' (im AppleScript-Ordner im Programme-Ordner)
- öffne ein neues Skript-Dokument mit Apfel-N und füge das obige Skript als Text ein
- dann sicherst du unter dem Namen deiner Wahl und dem Ort deiner Wahl (im Dateiformat 'Programm')


Jetzt hast Du's geschafft und kannst es ausprobieren (Doppelklicken und was auswählen oder Files/Folder draufziehen - aber vorher backuppen nicht vergessen).

Grüße & viel Erfolg bei der Installation,

Daisy
 

FlixDaCat

Gast
Super!
Vielen Dank. Bin mit Apple Script absolut noch nicht vertraut.

Grüße
 

FlixDaCat

Gast
Hmm... so langsam wirds peinlich:

Ich habe die jhead Datei auf meinem Schreibtisch gesichert. Er zeigt das als txt Datei an.
Als ich das Ganze zum ersten mal probiert habe, funktionierte der erste Befehl. Ich wurde aufegfordert mein Passwort einzugeben, was ich dann auch getan habe und mit Enter bestätigt habe. Beim zweiten Befehl jedoch meldete mir Terminal ,dass es die Datei oder den Pfad nicht gebe. Also versuchte ich das ganze nochmal. Jetzt sagt er schon beim ersten Befehl, dass er die Datei nicht findet.

Woran kann das liegen? Was mache ich falsch?

Danke im Voraus. :)
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
FlixDaCat schrieb:
Hmm... so langsam wirds peinlich:

Ich habe die jhead Datei auf meinem Schreibtisch gesichert. Er zeigt das als txt Datei an.

Hi Felix,

nö - nix ist hier peinlich. Frag nur.

Also dass der Download bei dir als 'txt Datei' angezeigt wird, lässt vermuten, dass Du beim Download einen Fehler gemacht hast (oder ich - ich hätte es ja auch genauer beschreiben können, gell?): den Link in einem neuen Browserfenster geöffnet und dann das ganze gesichert?

Wie auch immer - wir machen das jetzt anders:

Nimm das Terminal und tippe bzw. copy&paste (egal in welchem Verzeichnis):
Code:
sudo curl -o /usr/bin/jhead http://www.sentex.net/%7Emwandel/jhead/os-x/jhead
und dann:
Code:
sudo chmod 755 /usr/bin/jhead

Dann testest du die Installation bitte noch mal in einem neuen Terminal-Fenster mit
Code:
jhead -h

Kommt jetzt der Text mit den Optionen von jhead, dann hast du's richtig gemacht ;)
ansonsten gib bescheid.

P.S. mit dem AppleScript kamst du ansonsten klar?

Grüße

Daisy
 

FlixDaCat

Gast
Juchuu... Es klappt. Danke!
Klasse Programm! Hab jetzt endlich alles so, wie ich es gerne hätte.
Mit Terminal komme ich soweit klar...

Danke, Danke, Danke

Grüße

Felix
 

Daisy

Uelzener Rambour
Registriert
14.01.06
Beiträge
366
pete schrieb:
@Daisy und FlixDaCat

Bei der Abarbeitung der "gedroppten" Files könnte man ebenfalls Error-Handling einbauen, oder ist jhead selbst dazu in der Lage, "falsche" Dateiformate zu erkennen?

Hi Pete,

nach meinen Erkenntnissen werden Fremdformate von jhead einfach nur mit einer Fehlermeldung quittiert, die ich hier ausser acht gelassen haben - kaputtmachen tut's jedenfalls nix. Zur Sicherheit könnte man jhead aber noch mit der Option ' -exonly' aufrufen, dann ändert es auch wirklich nur JPEG-Dateien, die bereits einen EXIF-Header haben.

Grüße,

Daisy
 

ichamel

Starking
Registriert
25.03.06
Beiträge
220
Fehlermeldung bei Ausführung des Scripts

@Daisy
Ich habe Deine Installationsanweisungen genau befolgt. JHEAD läuft auch. Bei der Ausführung des Scripts erhalte ich jedoch einen Fehler! Da ich noch keine Ahnung von Script habe, hier meine Frage: Was könnte hier falsch laufen?? Fehlermeldung sh. Anhang.
Gruß Ichamel
 

Anhänge

  • Scriptfehler.png
    Scriptfehler.png
    18,7 KB · Aufrufe: 149

ichamel

Starking
Registriert
25.03.06
Beiträge
220
pete schrieb:
... Schaue nochmal hin: Der Scrollbalken deutet an, dass es noch mehr gibt. Weiter unten verbergen sich weitere Handler, unter anderem "processItem" ;)
Oh Mann - das ist jetzt wirklich peinlich :eek: Ich hatte zwar die Scrollbalken gesehen, aber da der Fensterinhalt beim mit der Maus markieren nicht weiterscrollte, hab ich vermutlich gedacht, ich hätte alles im Sack - falsch gedacht und du hast mit deiner Vermutung in's Schwarze getroffen.

Vielen lieben Dank!!!
 

FlixDaCat

Gast
Ich habe übrigens noch ein tolles Tool gefunden um die Daten zu ändern: Miana.
Einfach mal suchen... :)
 

Anindo

Wagnerapfel
Registriert
19.09.05
Beiträge
1.583
FlixDaCat schrieb:
Ich habe übrigens noch ein tolles Tool gefunden um die Daten zu ändern: Miana.
Einfach mal suchen... :)
Jo, so soll das auf dem Mac sein.
Terminalprogramm? Ist das hier ein Linux-Forum? :eek: