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.jpgzu diesem Layout kommen:
Ordner 1 \Ordner 2 | \Datei3.jpg | \Datei4.jpg \Ordner 5 \Datei3.jpg \Datei4.jpgDazu 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.
Links - Verschiedenes
03.11.2020
Hier einmal einige Links, die einfach in keine Kategorie passen...
WeiterlesenAndroid Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Java. Komponenten Jupyter JupyterBinder Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Präsentationen Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
Ich habe längere Zeit keine Erweiterung meines Docker-Zoos vorgenommen - auch weil ich mir einige konzeptionelle Gedanken dazu gemacht habe. Aber ich habe auch Ideen gesammelt, was in meinem @homelab noch fehlt und was dringend ergänzt werden sollte.
WeiterlesenEine Diskussion brachte mich neulich auf eine Idee - und im Urlaub hatte ich an einem regnerischen Tag genug Zeit, die entsprechenden Experimente zu machen...
WeiterlesenNachdem die Öffentlichkeit letzte Woche wieder mal mitgekriegt haben sollte, dass die Konzentration in der Cloud Schwachsinn ist und - vielleicht nicht - die ganze Öffentlichkeit vor zwei Wochen wieder einmal herzlich gelacht hat über die, die dennoch alles in die Cloud auslagern, aber offensichtlich nicht verstehen, wie sie funktioniert - hier einige Gedanken von mir dazu...
WeiterlesenManche 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, muss 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 Codeberg-Repositories findet man hier.