ERASAND --- DATEI-STRUKTUR WERKZEUGE --- PYTHON COACH --- HABLAMOS --- LINUX --- ONLINE TURTLE GRAFIKEN --- DOKUMENTATION
Ende 2020 bis Anfang 2021 half ich mit bei der Migration der Daten auf den SharePoint der Büro für Bauökonomie AG. Damit ich die grossen Datenmengen besser erfassen konnte, schrieb ich Hilfsprogramme in Python. Ende 2021 beschloss ich, diese Hilfsprogramme weiter zu entwickeln und alles zu dokumentieren.
Weiterentwicklung der Datei-Struktur Werkzeuge
Dateien und Verzeichnisse gemeinsam umbenennen
Zu lange Dateipfade lokalisieren
Zweite Version mit Grafischer Benutzeroberfläche
Erste Version mit Python zur Erfassung und zum Vergleich grosser Datei-Strukturen
ERASAND --- DATEI-STRUKTUR WERKZEUGE --- PYTHON COACH --- HABLAMOS --- LINUX --- ONLINE TURTLE GRAFIKEN --- DOKUMENTATION
Seit Ende 2020 gebe ich für Python Nachhilfe. Hier eine Referenz der Nachhilfe-Plattform meet'n'learn:
Andreas hat mir bei einem Projekt in der Informatik geholfen. Andreas könnte mir mit seinem enormen Fachwissen (Programmiersprache Python) jederzeit super weiterhelfen. Er war während des ganzen Prozesses sehr geduldig und unterstützend. Nur dank ihm ist es mir gelungen, das Projekt zu realisieren. Ich bin super dankbar für seine geleistete Arbeit und sein grosses Wissen. Der Nachhilfeunterricht war sehr zufriedenstellend. Besten Dank!
ERASAND --- DATEI-STRUKTUR WERKZEUGE --- PYTHON COACH --- HABLAMOS --- LINUX --- ONLINE TURTLE GRAFIKEN --- DOKUMENTATION
ERASAND --- DATEI-STRUKTUR WERKZEUGE --- PYTHON COACH --- HABLAMOS --- LINUX --- ONLINE TURTLE GRAFIKEN --- DOKUMENTATION
2010 lernte ich Linux kennen, und seitdem lässt es mich nicht mehr
los. Ich schätze die Verfügbarkeit von professioneller quelloffener
Software. Ich nutze die Linux-Mint 64-bit Distribution mit dem Mate
Desktop.
Hier ein paar hilfreiche Links für den Einstieg:
ERASAND --- DATEI-STRUKTUR WERKZEUGE --- PYTHON COACH --- HABLAMOS --- LINUX --- ONLINE TURTLE GRAFIKEN --- DOKUMENTATION
ERASAND --- DATEI-STRUKTUR WERKZEUGE --- PYTHON COACH --- HABLAMOS --- LINUX --- ONLINE TURTLE GRAFIKEN --- DOKUMENTATION
DOKUMENTATION --- Inhalt --- Python Links --- dateiSTRUKTUR --- pyosDOGU --- pyosDPLP --- pyOsV2 --- pyOsTools
DOKUMENTATION --- Python Links --- dateiSTRUKTUR --- pyosDOGU --- pyosDPLP --- pyOsV2 --- pyOsTools
Mit den Erfahrungen aus den Python Datei-Struktur Werkzeugen entwickle ich die Anwendung dateiSTRUKTUR, um Datei-Strukturen zu erfassen, zu dokumentieren und zu vergleichen. Gleichzeitig soll es als eine Referenz für die Entwicklung mit Python dienen.
Quellcode - Github: dateiSTRUKTUR
DOKUMENTATION --- Python Links --- dateiSTRUKTUR --- pyosDOGU --- pyosDPLP --- pyOsV2 --- pyOsTools
Verzeichnis wählen
Verzeichnis mit den Dateien auswählen
Dropdwon-Auswahl
Modus der Umbenennung wechseln:
Zeichen ersetzen mit suchen
Zeichen ersetzen am Anfang
Zeichen ersetzen am Ende
Zeichen einfügen am Anfang
Zeichen einfügen am Ende
Anzahl Zeichen löschen vom Anfang
Anzahl Zeichen löschen vom Ende
Eingabefelder
Die Eingabefelder verändern sich je nach Modus:
Zeichen ersetzen: Suchtext und neuer Text
Zeichen einfügen: Position und Text
Zeichen löschen: Position und Anzahl Zeichen
Umbenennen
Auswahl umbenennen: Ausgewähltes Element umbenennen
Doppelklick auf ein Element: Wie Auswahl umbenennen
Alle umbenennen: Alle Elemente umbenennen
Beenden
Anwendung schliessen
Voraussetzungen
Python 3: Python.org
Tkinter: Muss als Python Modul verfügbar sein - Bei der
Windows Installation enthalten, bei Linux per
Paketverwaltung
Download
Mit folgendem Link das ZIP herunterladen:
pyosdogu-main.zip
Installation
Die Dateien pyosDOGU.py und pyosDOGU.json in ein
Verzeichnis kopieren - Bei Linux und Unix pyosDOGU.py
ausführbar machen
Ausführung
pyosDOGU.py starten
Quellcode
Github: pyosDOGU
"GUI Fenster": "800x600" 800 ist die Breite und 600 die Höhe in Pixel - Die Breite und Höhe darf verändert werden
Falls die Einstellungsdatei nicht vorhanden ist, wird diese erzeugt
DOKUMENTATION --- Python Links --- dateiSTRUKTUR --- pyosDOGU --- pyosDPLP --- pyOsV2 --- pyOsTools
Pfadläne ändern
Die erlaubte Anzahl der Zeichen im Pfad angeben
Verzeichnis wählen
Das Stammverzeichnis der Datei-Struktur wählen - Die Struktur wird
automatisch analysiert und das Ergebnis wird in der Liste
angezeigt
Pfad öffnen
Öffnet das ausgewählte Element der Liste im Dateimanager
Doppelklick auf ein Element in der Liste
Wie Pfad öffnen
Auswahl unten links
Dateimanger wählen um die Pfade zu öffnen, je nach Betriebssystem
variiert die Auswahl
Beenden
Anwendung schliessen
Voraussetzungen
Python 3: Python.org
Tkinter: Muss als Python Modul verfügbar sein - Bei der
Windows Installation enthalten, bei Linux per
Paketverwaltung)
Download
Mit folgendem Link das ZIP herunterladen:
pyosdplp-main.zip
Installation
Die Dateien pyosDPLP.py und pyosDPLP.json in ein
Verzeichnis kopieren - Bei Linux und Unix pyosDPLP.py
ausführbar machen
Ausführung
pyosDPLP.py starten
Quellcode
Github: pyosDPLP
p>pyosDPLP.json
JSON-Datei mit Einstellungen, Formatierung und Schreibweise
einhalten
"Filemanager": "X) Thunar" Dateimanager zum Pfade öffnen - Dies kann im Programm bearbeitet werden
"GUI Fenster": "800x600" 800 ist die Breite und 600 die Höhe in Pixel - Die Breite und Höhe darf verändert werden
"max Pfad": 240 Maximale Pfadlänge - Dies kann im Programm bearbeitet werden
Falls die Einstellungsdatei nicht vorhanden ist, wird diese erzeugt
DOKUMENTATION --- Python Links --- dateiSTRUKTUR --- pyosDOGU --- pyosDPLP --- pyOsV2 --- pyOsTools
einstPyOsV2.py
Mit einem Texteditor bearbeitbar
DC_DIRS
Python Wörterbuch mit den zu erfassenden Dateistrukturen
Schlüssel: ID als Text
Wert: 3'er Tupel mit Verzeichnispfad, Pfad JSON-Datei,
Pfad HTML-Datei
{ "ID" : ( "/pfad/pfad" , "/pfad/quelle.json" ,
"/pfad/dokumentation.html" ) , ..}
DC_COMP
Python Wörterbuch mit dem die erfassten Dateistrukturen verglichen
und das Ergebnis abgelegt werden
Schlüssel: ID als Text
Wert: 3'er Tupel mit dem Quell-Pfad JSON-Datei,
Ziel-Pfad JSON-Datei, Unterschiede-Pfad JSON-Datei
{ "ID" : ( "/pfad/quelle.json" , "/pfad/ziel.json" ,
"pfad/unterschiede.json" ) , ..}
LS_AUSNAHMEN
Liste mit Dateien, welche nicht berücksichtigt werden
[ "datei1.erw" , "datei2" , .. ]
LS_AUSN_START
Liste mit Dateianfängen, welche nicht berücksichtigt werden
[ "Anf1" , "Anf2" , .. ]
LS_AUSN_ENDE
Liste, mit Dateiendungen, welche nicht berücksichtigt werden
[ ".Erw1" , ".Erw2" , .. ]
TXT_FILEMAN
Textangabe des zu verwendenden Dateimanagers
"WINDOWS", "THUNAR", "NAUTILUS", "NEMO"
Register Verzeichnis Strukturen erstellen
Informationen: Informationen über den gewählten Eintrag zeigen
JSON erfassen: Datei-Strukturen als JSON erfassen - wie in
DC_DIRS eingestellt
Erfasste JSON zeigen: Die erfassten JSON Datei-Strukturen
zeigen
Aktualisieren: Die Benutzeroberfläche aktualisieren
HTML Dokumentation: HTML Dokumentationen aus den erfassten JSON Datei-Strukturen erstellen - wie in DC_DIRS eingestelltDokumentationen zeigen: Die erstellten HTML Dokumentationen zeigen
Beenden: Die Anwendung beenden
Register Prüf Resultat Ziel Struktur
Drop-Down Auswahl: Prüf Ergebnisse aus dem Dateivergleich auswählen - wie in DC_COMP eingestellt
Quelle / Ziel öffnen: Öffnet vom ausgewählten Eintrag das Quell- und das Zielverzeichnis - sofern diese vorhanden sind
Beenden: Die Anwendung beenden
Voraussetzungen
Python 3: Python.org
Tkinter: Muss als Python Modul verfügbar sein - Bei der
Windows Installation enthalten, bei Linux per
Paketverwaltung)
Download
Mit folgendem Link das ZIP herunterladen:
pyOsV2
Installation
DDie 3 Scripts startPyOsV2.pyw, einstPyOsV2.py und
pyosv2.py müssen im gleichen Verzeichnis vorhanden sein -
Bei Linux und Unix startPyOsV2.pyw ausführbar machen
Ausführung
startPyOsV2.pyw starten
Quellcode
Github: pyOsV2
DOKUMENTATION --- Python Links --- dateiSTRUKTUR --- pyosDOGU --- pyosDPLP --- pyOsV2 --- pyOsTools
Durchläuft und listet alle Verzeichnisse und Dateien einer Datei-Struktur und gibt diese sortiert als formatierte Textdatei aus. Die Textdatei wird im Hauptverzeichnis der Struktur gespeichert.
Variablen
QUELLE: Pfad zur Datei-Struktur
Durchläuft 2 Verzeichnis-Strukturen, eine Quell- und eine Ziel-Struktur, und gibt die Unterschiede von Namen, Grösse und Datum in einer formatierten Textdatei in der Ziel-Struktur aus.
Variablen
QUELLE: Pfad zur Quell-Datei-Struktur
ZIEL: Pfad zur Ziel-Datei-Struktur
ART: Ausgabeart, "Detail" = detailliert pro Datei,
"Resume" = zusammengefasst pro Verzeichnis.
Verschiebt Dateien welche im Namen und in der Erweiterung spezifiziert wurden von einer Quell Datei-Struktur in eine Ziel-Datei-Struktur. Am Schluss wird der Inhalt der Ziel-Datei-Struktur dokumentiert.
Variablen
QUELLE: Pfad zur Quell-Datei-Struktur
ZIEL: Pfad zur Ziel-Datei-Struktur
NAME: Spezifikation des Dateinamens, * oder
leere Variable: alle Dateinamen
ERWEITERUNG: Spezifikation der Dateierweiterung, * oder
leere Variable: alle Erweiterungen
Erzeugt aus einer flachen Datei-Struktur, z.B. synchronisierte Verzeichnisse einer Cloud, eine hierarchische Struktur. Zur Abbildung der Hierarchie werden die Namen der synchronisierten Verzeichnisse verwendet.
Variablen
QUELLE: Pfad zur Quell-Datei-Struktur
ZIEL: Pfad zum Ziel-Verzeichnis
ARCHIV: Sicherungs-Verzeichnis für bestehende Hierarchien
SYMLINK: Art der Verknüpfung
DIREKT_LINK: Direkte Paarung zwischen Verknüpfungsname und
Ordnername der Hierarchie
VAR_LINK: Paarung mit Anfang Ordnername und Ordnername der
Hierarchie. Der Verknüpfungsname ist der verbleibende Rest des
Ordnernamens.
UNBEKANNT: Ordnername der Hierarchie für alle nicht
erkannten Ordner
Um entfernte Datei-Strukturen miteinander zu vergleichen sind zwei Python-Skripte, zwei Arbeitsschritte nötig.
Durchläuft von einem Wurzelverzeichnis jedes Verzeichnis wie eine Datei-Struktur und speichert das Ergebnis, vorbereitet zum Vergleichen, in einer JSON-Datei.
Variablen
QUELLSTAMM: Pfad zur Datei-Struktur
JSONPATH: Verzeichnisangabe für die JSON Datei
Vergleicht JSON Dateien, in welchen Datei-Strukturen von remodirs.py gespeichert wurden, miteinander und gibt die Unterschiede in einer formatierten Textdatei aus. Es werden nur die JSON Dateien gleichen Namens im Quell- / und Zielverzeichnis miteinander verglichen.
Variablen
QUELLE: Pfad zu den JSON Dateien der
Quell-Datei-Strukturen
ZIEL: Pfad zu den JSON Dateien der
Ziel-Datei-Strukturen
AUSNAHMEN: Liste mit Dateinamen, welche vom Vergleich
ausgeschlossen werden sollen
AUSN_STARTa: Dateianfang für Ausnahmen, Funktion
remocomparedirs anpassen, Zeilen 134 - 139 und Zeilen
217 - 222
AUSN_ENDa: Dateiende für Ausnahmen, Funktion
remocomparedirs anpassen, Zeilen 134 - 139 und Zeilen
217 - 222
ART: Ausgabeart, "Detail" = detailliert pro Datei,
"Resume" = zusammengefasst pro Verzeichnis.
VERGLEICH: Verzeichnisangabe für das Protokoll des
Vergleichs
Voraussetzungen
Python 3: Python.org
Download
Mit folgendem Link das ZIP herunterladen:
pyOsTools
Installation
Die Skripte können sich in einem beliebigen Ordner befinden
Ausführung
Jedes Skript ist separat für sich ausführbar
Quellcode
Github: pyOsTools
ERASAND --- DATEI-STRUKTUR WERKZEUGE --- PYTHON COACH --- HABLAMOS --- LINUX --- ONLINE TURTLE GRAFIKEN --- DOKUMENTATION