Inhaltsverzeichnis


Linux zu Hause

Die effizienz von Linux im alltäglichen Gebrauch
Oktober 2020

Inhalt dieser Dokumentation

Mein privater Gebrauch von Linux

Ich benutze Linux Mint privat auf einem Mittelklasse Notebook aus dem Jahr 2016 (Dell Inspiron 15", Intel Core i5-6200U, 8 Mb RAM ). Ich verwende es mehrheitlich für Korrespondenz, Finanzen, Freizeitplanung, Internet Recherche und für mein Hobby.
Ich brauche viel die Anwendungen von Google-Drive, weil ich die mobile Verfügbarkeit meiner Dokumente schätze. Ich nutze auch Desktop Programme wie z.B. das Libreoffice, davon finde ich Draw und die PDF Bearbeitung stark.
Ich belasse so viel wie möglich bei der Grundinstallation. Bei Spezialitäten recherchiere ich im Internet und installiere mir dann die passende Anwendung. Dabei bevorzuge ich als Quelle die mitgelieferte Anwendungsverwaltung.
Vom Anwender Profil bin ich der Power-User und Hacker, welcher die grafische Bedienungsführung schätzt, aber  bei gewissen Operationen das Terminal bevorzugt.

Installation

Grundlegende Informationen

Distribution: Linux Mint 64 Bit
Desktop: XFCE
Partitionierung: Eine grosse Partition (Ich lösche alles bei einer Neuinstallation und stelle die Daten von meiner Dropbox wieder her)

Zu Beachten

Live-DVD erstellen und zuerst ausprobieren
Bei Problemen mit der Installation das WLAN deaktivieren
Passwortwahl: Nur Sonderzeichen wählen, welche auch mit einer US-Amerikanischen Tastatur eingegeben werden können.

Nach der Installation

Dropbox hinzufügen
NumlockX

Hilfreiche Internetseiten


pyosDPLP

Mit DPLP Kann in einer Dateistruktur von allen Dateien und Verzeichnissen die Anzahl benutzter Zeichen des Gesamtpfades geprüft werden.

Nach der Analyse aller Verzeichnis- und Dateipfade werden alle Elemente, welche die zulässige Anzahl überschreiten, in einer Liste angezeigt.

Anwendung

Pfadlänge ändern - Die erlaubte Anzahl Zeichen definieren
Verzeichnis wählen - Das Stammverzeichnis der zu überprüfenden Struktur auswählen
X) Thunar - Mit dieser Auswahl kann der Dateimanager gewählt werden, mit welchem die Dateien und Verzeichnisse bearbeitet werden sollen. Je nach Betriebssystem variiert die Auswahl
Pfad öffnen - Der Pfad des ausgewählten Elementes wird im Dateimanager geöffnet
Doppelklick auf ein Element in der Liste - Öffnet ebenfalls den Pfad des Elementes
Beenden - Schliesst die Anwendung.

Installation

Voraussetzungen - Es muss Python 3 auf dem PC installiert sein. Mit diesem Link kann es heruntergeladen werden: Python.org
Tkinter muss als Python Modul verfügbar sein. In der Windows Installation ist es enthalten, bei Linux wird es über die Paketverwaltung hinzugefügt.

Download - Das Programm kann mit folgendem Link als ZIP heruntergeladen werden: pyosdplp-main.zip

Installation - Die Dateien pyosDPLP.py und pyosDPLP.json können in ein beliebiges Verzeichnis kopiert werden. Das Programm wird mit pyosDPLP.py gestartet.

Quellcode - Der Quellcode ist auf Github vorhanden: Github: pyosDPLP

Einstellungen

In der Datei pyosDPLP.json werden die Programm-Einstellungen gespeichert.

Filemanager: Der gewünschte Dateimanager

GUI Fenster: Die Grösse des Anwendungsfenster. Dieser Wert kann nur hier verändert werden. Bitte die Formatierung und Schreibweise einhalten.

max Pfad: Die maximale Anzahl erlaubter Zeichen

Falls die Einstellungsdatei nicht vorhanden ist, wird diese vom Programm wieder erzeugt.


pyOsV2

Bildquelle: erasand

pyOsV2 ist eine Sammlung von Python Tools zur Erfassung und Kontrolle komplexer Datei-Strukturen mit einer grafischen Benutzeroberfläche. Es ist eine Weiterentwicklung der PyOsTools.

Die Benutzeroberfläche ist in 3 Register aufgeteilt:
Erfassen von Dateistrukturen
Vergleichen von erfassten Dateistrukturen
Prüfen der Unterschiede anhand der Vergleiche

Inhalt dieser Dokumentation

Installation

Bildquelle: erasand

Als Voraussetzung wird eine Python 3 Installation benötigt. Bei Linux und Unix Systemen stellen Sie bitte sicher, dass Tkinter mit installiert ist. Bei Windows wird dies mitgeliefert, bei Mac Os sollte dies auch der Fall sein.

Die 3 Scripts, startPyOsV2.pyw, einstPyOsV2.py und pyosv2.py müssen im gleichen Verzeichnis vorhanden sein, und dann kann pyOsV2 mit Doppelklick auf startPyOsV2.pyw gestartet werden. (Bei Linux und Unix muss diese Datei vorher ausführbar gemacht werden.)

Einstellungen

Bildquelle: erasand

Alle Einstellungen werden mit dem Text Editor im Script einstPyOsV2.py gemacht. Hier sind die wichtigsten erläutert:

DC_DIRS: Python Dictionairy mit den zu erfassenden Dateistrukturen. Der Schlüssel ist eine ID als Text, der Wert ist ein 3'er Tupel mit dem Verzeichnispfad, dem Pfad der JSON- und dem Pfad der HTML Datei: { "ID" : ( "/pfad/pfad" , "/pfad/quelle.json" , "/pfad/dokumentation.html" ) , ..}

DC_COMP: Python Dictionairy mit dem die erfassten Dateistrukturen verglichen und das Ergebnis abgelegt werden. Der Schlüssel ist eine ID als Text, der Wert ist ein 3'er Tupel mit dem Quell- und dem Ziel-Pfad der erfassten JSON Datei sowie dem Pfad der Unterschiede, ebenfalls als JSON Datei: { "ID" : ( "/pfad/quelle.json" , "/pfad/ziel.json" , "pfad/unterschiede.json" ) , ..}

LS_AUSNAHMEN: Python Liste, welche Dateien definiert, die nicht berücksichtigt werden: [ "datei1.erw" , "datei2" , .. ]

LS_AUSN_START: Python Liste, welche Dateianfänge definiert, die nicht berücksichtigt werden: [ "Anf1" , "Anf2" , .. ]

LS_AUSN_ENDE: Python Liste, welche Endungen von Dateien definiert, die nicht berücksichtigt werden: [ ".Erw1" , ".Erw2" , .. ]

TXT_FILEMAN: Textangabe, welcher Dateimanager verwendet werden soll. Mögliche Auswahlen: "WINDOWS", "THUNAR", "NAUTILUS" oder "NEMO"

Dateistrukturen erfassen

Bildquelle: erasand

In diesem Register wird die Erfassung der Dateistrukturen geregelt. (Einstellung DC_DIRS) Hier können JSON erfasst werden, und aus den erfassten JSON Strukturen können HTML Dokumentationen generiert werden. Es können Informationen des gewählten Eintrages über die Dateien abgerufen und die Dateien können im Dateimanager angezeigt werden.

Dateistrukturen vergleichen

Bildquelle: erasand

In diesem Register können die erfassten Dateistrukturen miteinander verglichen werden. (Einstellung DC_COMP) Es können Informationen des gewählten Eintrages über die erfassten Dateistrukturen abgerufen werden und alle Quell-/ Ziel-Dateistrukturen können miteinander verglichen werden.

Unterschiede prüfen

Bildquelle: erasand

In diesem Register werden die Unterschiede aus dem Vergleich zusammengefasst pro Verzeichnis dargestellt. In Bezug auf die Ziel Datei-Struktur wird angegeben wie viele Dateien im Ziel zuviel vorhanden sind, wie viele fehlen, wie viele neueren Datums sind, wie viele älteren, wie viele grösser und wie viele kleiner sind. Die Quelle und das Ziel des gewählten Verzeichnisses können im Dateimanager angezeigt werden.

Code von pyOsV2

pyOsV2 auf Github
pyOsV2 als ZIP

pyOsV2 unterliegt der GPL v3.0 Lizenz


pyOsTools

Python Tools für die Erfassung und Kontrolle komplexer Datei-Strukturen / November 2020

Inhalt dieser Dokumentation

Verzeichnis-Strukturen auflisten

"listdirs.py" durchläuft und listet alle Verzeichnisse und Dateien einer Datei-Struktur und gibt diese sortiert und formatiert als Textdatei aus. Die Textdatei wird im Hauptverzeichnis der Struktur gespeichert.

Am Anfang des Scripts kann mit QUELLE die Verzeichnis-Struktur angegeben werden.

Verzeichnis-Strukturen vergleichen

"compdirs.py" 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 aus.

Am Anfang des Scripts können mit QUELLE und ZIEL die beiden Strukturen angegeben werden. Das Ergebnis wird in der Zielstruktur gespeichert.
Mit ART wird die Ausgabe angegeben, Detail für detailliert pro Datei, Resume für zusammengefasst pro Verzeichnis.

Dateien einer Verzeichnis-Struktur verschieben

"movdirs.py" verschiebt Dateien welche im Namen und in der Erweiterung spezifiziert wurden von einer Quell Datei-Struktur in ein Ziel Verzeichnis. Am Schluss wird der Inhalt des Ziel-Verzeichnisses dokumentiert.

Am Anfang des Scripts können mit QUELLE und ZIEL die Quell Verzeichnis-Struktur und das Zielverzeichnis angegeben werden, mit Name und Erweiterung können die Dateien spezifiziert werden.

"strktlink.py" erzeugt as einer flachen Verzeichns-Stuktur, z.B. synchronisierte Verzeichnisse einer Cloud, eine hierarchische Struktur. Zur Abbildung der Hierarchie werden die Namen der synchronisierten Verzeichnisse verwendet.

Am Anfang des Scripts kann mit QUELLE die Quell-Struktur angegeben werden und mit ZIEL das Verzeichnis, in welchem die Hierarchie abgebildet wird. Mit ARCHIV wird ein Sicherungs Verzeichnis für alte Hierarchien angegeben und mit SYMLINK die Methode zur Erstellung von Ordner Verknüpfungen.

Mit DIREKT_LINK werden Verzeichnisse angegeben, welche direkt in der Hierarchie abgebildet werden, mit VAR_LINK werden Veerzeichnisse definiert, deren Struktur anhand des Namen-Anfangs und deren Verknüpfung-Namens anhand des Namen-Endes gebildet werden. mit UNBEKANNT wird die Struktur angegeben, in der alle nicht erkannten Ordner der Quell-Struktur verknüpft werden.

Entfernte Datei-Strukturen vergleichen

Um entfernte Datei-Strukturen miteinander zu vergleichen sind zwei Python-Skripte, 2 Arbeitsschritte nötig.

"remodirs.py" durchläuft von einem Wurzelverzeichnis jedes Verzeichnis wie eine Datei-Struktur und speichert das Ergebnis, vorbereitet zum vergleichen, in einer JSON-Datei.
Mit QUELLSTAMM wird das Wurzelverzeichnis angegeben mit JSONPATH wird das Verzeichnis angegeben, in welchem die JSON Datei gespeichert wird.

"compremo.py" vergleicht JSON Dateien in welchen Datei-Strukturen von "remodirs.py" gespeichert wurden, miteinander und gibt die Unterschiede in einer formatierten Textdatei aus.
Dabei kann unterschieden werden, ob man eine detaillierte Auswertung, pro Datei, oder eine Zusammenfassung pro Verzeichnis haben möchte.
Mit QUELLE und ZIEL werden die JSON im Quell-Verzeichnis mit den JSON im Ziel-Verzeichnis verglichen. Nur JSON mit dem gleichen Namen werden miteinander verglichen.
MitAUSNAHMEN wird eine Liste definiert, welche Dateinamen vom Vergleich ausgeschlossen werden sollen.
Mit AUSN_STARTa und mit AUSN_ENDa kann jeweils ein Dateianfang oder ein Dateiende definiert werden. Diese beiden Ausnahmen müssen jedoch in den IF-Prüfungen der Funktion remocomparedirs angepasst werden. (Zeilen 134 - 139 und Zeilen 217 - 222)
Mit ART wird die Ausgabe angegeben, Detail für detailliert pro Datei, Resume für zusammengefasst pro Verzeichnis.
Mit VERGLEICH wird das Verzeichnis angegeben, in welchem die Vergleiche und ein Protokoll der Vergleiche abgelegt wird.

Dateien im aktuellen Verzeichnis umbenennen

"pyren.py" benennt Dateien des aktuellen Verzeichnisses um.

Für die Umbenennung werden String-Methoden für Python benutzt. Diese können in einer IF-Prüfung nach Bedarf angepasst werden.

Code von pyOsTools

pyOsTools auf Github
pyOsTools als ZIP

"listdirs.py" unterliegt der GPL v3.0 Lizenz