Bildverwaltung automatisiert

vorhergehende Artikel in: Linux
17.10.2016

Wer sich auch schon einmal darüber geärgert hat, daß die Foto-"Management"-Software Ordner erzeugt, die einen Unterordner enthalten, die einen Unterordner enthalten ..., der kann unter Umständen von dem hier vorgestellten Skript profitieren.

Die Erstellung begann, weil meine Fotos durch den Import in Unterordner sortiert wurden, die als einziger Unterordner in ihrem Ordner lagen. Das wiederholte sich auch noch, so daß es vorkommen konnte, daß ich, um zu einem Bild zu navigieren, mich durch drei oder vier Unterordner wühlen musste, die jeweils nur einen Unterordner beinhalteten.

Da ich dadurch genervt wurde, beschloß ich, eine Möglichkeit zu schaffen, die gesamte Fotobibliothek zu durchforsten und alle Bilder so weit "hochzukopieren", daß keine Ordner mehr übrigblieben, die nur einen Unterordner enthielten. Ich wollte also zum Beispiel von diesem Layout

Ordner 1
	\Ordner 2
	|	\Ordner 3
	|		\Ordner 4
	|			\Datei3.jpg
	|			\Datei4.jpg
	\Ordner 5
		\Ordner 6
			\Datei3.jpg
			\Datei4.jpg
zu diesem Layout kommen:
Ordner 1
	\Ordner 2
	|	\Datei3.jpg
	|	\Datei4.jpg
	\Ordner 5
		\Datei3.jpg
		\Datei4.jpg
Dazu setzte ich das unten verlinkte Skript ein. Es erwartet einen Verzeichnisnamen als einziges Argument - wird keiner angegeben, wird das aktuelle Verzeichnis benutzt. Von dort ausgehend scannt das Skript rekursiv alle Verzeichnisse, bis es eines findet, das nur ein Unterverzeichnis enthält. Wird ein solches entdeckt, werden dessen Inhalte in das übergeordnete Verzeichnis kopiert. Anschließend wird das nun leere Unterverzeichnis gelöscht.

Als ich beim Schreiben des Skriptes so weit gekommen war, erinnerte ich mich an eine Recherche, die ich aus anderen Gründen ein paar Monate vorher durchgeführt hatte: Wie kann man unter Linux Verzeichnissen eigene Icons verpassen? Da ich im Skript ja sowieso alle Verzeichnisse rekursiv scanne, könnte ich ja dabei gleich Verzeichnissen, die nur Bilder enthalten, eines davon als Custom Icon zuordnen...

Gesagt, getan - dabei musste nur beachtet werden, daß Gnome und KDE sich in der Art und Weise der Festlegung von Custom Icons unterscheiden. Ich unterstütze beide. Dazu wird zunächst eines der Bilder verkleinert und im Format PNG gespeichert. Anschließend werden die Definitionen der Custom Icons für Gnome und KDE (und andere Fenstermanager/Dateimanager, die der OpenDesktop Specification folgen) geschrieben.

Lizenz
pic_mgr

Aktualisierung vom 17. Oktober 2016

Ich habe das Skript nochmals völlig überarbeitet und in eine Form gebracht, in der es als Kontextmenü-Eintrag über die Nautilus-Actions funktioniert:
Lizenz
directory_thumbnails

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Fährnisse des Buildprozesses unter Windows

    17.07.2019

    Nachdem ich begonnen hatte, mich mit der Beschleunigung der Berechnung des Mandelbrot-Fraktals unter Zuhilfenahme der Shadereinheiten in Graphikkarten zu beschäftigen und erste Erfolge feiern konnte, wollte ich das mal auf einer richtigen Graphikkarte ausprobieren...

    Weiterlesen...

Neueste Artikel

  • Datenvalidierung UTF8 mit BiDi-Steuerzeichen (TrojanSource 2.0)

    Ich bin heute nochmal inspiriert worden, weiter über die Trojan Source Vulnerability nachzudenken. Meiner Meinung nach bestehen hier noch Probleme - speziell bei Nutzereingaben oder Daten, die über externe Schnittstellen ampfangen werden.

    Weiterlesen...
  • OpenStreetMap Navi als Docker-Container

    Ich habe die auf OpenStreetMap basierende OpenSource Navigationslösung Graphhopper in einen Docker-Container gepackt und als neuestes Mitglied in meinem Docker-Zoo willkommen geheißen.

    Weiterlesen...
  • SQL-Aggregatfunktionen in SQLite als BeanShell-Scripts

    Ich habe neulich über eine Möglichkeit berichtet, SQLite mittels der sQLshell und Beanshell-Skripten um SQL-Funktionen zu erweitern. In diesem Artikel versprach ich auch, über eine solche Möglichkeit für Aggregatfunktionen zu berichten.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.