Hallo, ich möchte ein Skript programmieren das mehrere Dateien (JPG Bilder) anhand von deren EXIF Dateinformationen unbenennt (Dateiname). Es gibt zwar fertige Programme, diese erfüllen aber nicht meine Anforderungen, deshalb möchte ich selbst solch ein Skript programmieren. Jetzt die Frage: Gibt es eine Skriptsprache (und wenn ja welche) die ich sowohl unter Windows XP - Win. 8 als auch unter Linux (Ubuntu) verwenden kann OHNE zusätzliche Software zu installieren? Unter Windows könnte ich eine bat Datei stricken, jedoch läuft die dann nicht unter Linux. und unter Linux könnte ich ein SH Skript machen, das läuft aber nicht unter Windows. Cygwin etc. ist keine Alternative (nicht installierbar nachträglich)
Ohne Zusatzprogramme - Nein. Geeignete Plattformübergreifende Scriptsprachen wären z.B. Ruby, Python, PHP. Python ist mMn. die beste Lösung, da auf vielen Unix-Systemen bereits orinstalliert und auch für Windows verfügbar. Pash wäre auch eine Möglichkeit, damit holst du dir die Windows-Powershell auf Linux. Out of the box gibt es imho nix.
skript schrieb: > anhand von deren EXIF Dateinformationen unbenennt (Dateiname). unbenennen - ist das, wenn man vernünftige Dateinamen in 'Unbenannt\d+.jpg' ändert? *SCNR*
Windows kommt mit einer Art Javascript-Interpreter, aber das Objektmodell, das dann erforderlich ist, um auf das Dateisystem zuzugreifen, ist vollkommen inkompatibel zu allem, was nicht Windows heißt. Der Scriptinterpreter ist die "windows scripting engine" cscript.exe (oder wscript.exe, aber die Variante ist eher nutzlos, da sie Texte jeweils in einer zu bestätigenden Dialogbox ausgibt ...
Ich würde es mit Perl machen. Ist in jeder Linux-Standardinstallation enthalten und für Windows gibt es auch einige kostenlose Interpreter. Z.B.: ActivePerl und StrawberryPerl. Um einfach an die EXIF-Infos zu kommen, würde das wahrscheinlich schon reichen. http://search.cpan.org/~ccpro/Image-EXIF-0.99.4/EXIF.pm
Ich hätte auch Python vorgeschlagen ;-) Gerade für Anfänger geeignet ...
Da Linux nur der Kernel ist müsstest Du dort in jeden Fall die entsprechenden Interpreter installieren und Windows bietet dir die Powershell und Batchskripte. Weiterhin gibt es über den vorinstallierten Internet Explorer VBscript, VBA etc. -- wen auf beiden System ein Brwoser vorhanden ist und dieser eine Skriptsprache unterstützt wäre auch damit einiges möglich (oder gar Flash).
skript schrieb: > und unter Linux könnte ich ein SH Skript machen, das > läuft aber nicht unter Windows. Doch mit sh.exe. Die sh.exe muss man nur entpacken und ggf dem Pfad eintragen.
Für Linux gibt es jhead, damit kann man sich die Scripterei meist sparen. Ich benutze es zusammen mit Perl, um Bilder von verschiedenen Kameras (die auch noch auf unterschiedliche Zeitzonen eingestellt sind) chronologisch zu sortieren, Modify-time auf EXIF-Daten stellen, ggf. zu drehen und auf eine gemeinsame Größe zu skalieren. Allerdings habe ich nicht EXIF.pm benutzt sondern die EXIF-Daten mit jhead in eine Variable eingelesen und manches ist sicherlich noch umständlich realisiert. Ich habe das Script mal angehängt, vielleicht ist es ja als Ausgangsbasis brauchbar. Jörg
Herzlichen Dank für die Tipps! Daraus werde ich mir jetzt was passendes zusammenbauen!
Joerg Wolfram schrieb: > Für Linux gibt es jhead Auch für Mac OS und Windows (gilt auch für den "Klassiker" ExifTool). An die Exif-Daten zu kommen, sollte also kein Problem sein.
Bernd K. schrieb: > Py2exe oder Pyinstaller. cx_Freeze ist moderner und funktioniert auf mehr Systemen.
Ro V. schrieb: > skript schrieb: >> und unter Linux könnte ich ein SH Skript machen, das >> läuft aber nicht unter Windows. > > Doch mit sh.exe. Die sh.exe muss man nur entpacken und ggf dem Pfad > eintragen. Nun besteht ein Shellskript allerdings in der Regel hauptsächlich aus den Aufrufen weiterer Programme, die man dann auch alle für die Zielplattform braucht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.