Einführung zum Programm „Ersetze“

Allgemeines

Das Programm wird wie üblich, z.B. durch einen Doppelklick, gestartet.


Nach dem Programmstart erscheint eine Lizenzmeldung (auf englisch - original - und noch einmal auf deutsch).

Diese Meldung kann man (lesen und dann) einfach mit Return (Zeilenschaltung) wegklicken.

Dann erscheint die (Haupt-) Maske des Programmes.



Hauptmaske

Die Hauptmaske enthält zwei übereinanderliegende Tabellenfelder und diverse Menüs. Das obere Tabellenfeld enthält die Liste der Dateien, auf die markierten (bis auf Ausnahmen, man kann z.B. ALLE Datei-Einträge auf einmal löschen) beziehen sich die Punkte des Menüs „Dateiliste“ (s.u.) bzw. die Befehle in der „Befehlsliste“, die in dem Tabellenfeld unten in der Maske angezeigt wird.

Der Haupt-Unterschied zwischen dem Menü „Dateiliste“ und dem Ausführen der entsprechenden Befehle in der „Befehlsliste“ besteht darin, dass bei den Befehlen in der „Befehlsliste“ etwaige Parameter gleich mit eingetragen werden können, während sie beim Aufruf des entsprechenden Menüpunktes immer abgefragt werden (müssen ;-) ).

Grundsätzliches zur Bedienung von Tabellenfeldern

Die einzelnen Spalten können editierbar oder nur zur Anzeige sein, wie z.B. die ersten fünf Spalten der Dateien-Tabelle. Die editierbaren Spalten können entweder Auswahlfelder (Comboboxen) oder einzeilige Textfelder sein. Sind Eingaben in ein Textfeld / auf einer Text-Spalte gemacht worden, kann man, um diese rückgängig zu machen und die Eingabe ohne Änderung abzubrechen, die ESC-Taste drücken.

Die letzte Spalte in der Befehlsliste ist eigentlich mehrzeilig. Um dort mehrzeilige Eingaben machen zu können, sollte man auf die „Eingabehilfe“ zurückgreifen (die mit CTRL-E oder über das Hilfe-Menü aufgerufen werden kann, wenn der Cursor auf einer Zelle dieser Spalte steht).

Wichtig: Um den Cursor zwecks Eingabe auf den editierbaren Textfeldern oder zwecks Markieren von nur kopierbarem Text auf einem Feld zu positionieren, muss man einen Doppelklick (mit dem Mauszeiger) auf diesem Feld machen (sonst genügt ein einfacher Klick).

Außerdem können bei beiden Tabellenfeldern mehrere Zeilen gleichzeitig markiert werden. Erste Variante (Bereich): Man klickt an ein Ende des Bereiches, den man markieren will, hält eine der Tasten zum Umschalten auf Großbuchstaben („Shift-Tasten“) gedrückt, und klickt mit der Maus auf die Zeile, wo das andere Ende des Bereiches liegen soll. Oder: Man klickt nacheinander auf die Zeilen, die man markieren möchte, wobei man die CTRL- / STRG-Taste gedrückt hält.

Datei

Das Datei-Menü enthält außer dem Punkt „Backup“ nur den Befehl zum Beenden des Programmes.

„Backup“

Auswahl des Punktes „Backup“ führt dazu, dass zunächst abgefragt wird, in welche Datei das Backup gespeichert werden soll. Das übergeordnete Verzeichnis dieser Datei wird genommen, um dort ein Unterverzeichnis anzulegen, dessen Name aus der Zeichenkette „Backup“, dem aktuellen Datum in einem Format, dass zu einer korrekten Sortierung führt (JJJJMMTTHHmmss), und aus dem Namen (ohne Erweiterung) der Backup-Datei gebildet wird (z.B. „Backup 20100409174359 Meine_Datei“).

Dann werden ALLE Dateien aus der Dateiliste genommen und der Reihe nach in Zip-Dateien in diesem (Unter-) Verzeichnis gespeichert. Zip-Dateien dürfen maximal 4 GB groß sein, deswegen wird der Dateiname nicht „einfach so“ genommen, sondern um eine laufende Nummer ergänzt, für den Fall, dass mehr als eine Zip-Datei notwendig ist (Beispiel: „Meine_Datei 000.zip“).

Die Beschränkung der Größe der Zip-Dateien hat den positiven Nebeneffekt, dass diese jeweils auf eine DVD passen. (Ist interessant, falls die Dateien nicht ohnehin auf USB-Sticks – mit mindestens 4 GB – kopiert werden sollen.)

Außerdem haben WinRar, 7Zip und Windows bei den mit Java® erstellten Zip-Dateien Probleme mit Nicht-ASCII-Zeichen. Sie dürfen nicht in Zip-Einträgen (sprich: nicht in Dateinamen) vertreten sein. Ein Dateiname, der é, á oder ® enthält, würde zu Problemen beim Entpacken führen (und nicht richtig dargestellt werden). Deswegen ist in diesem Programm eine Utility enthalten, um komprimierte Dateien einzusehen (richtig dargestellt, z.B. é, á oder ® und nicht „++“ statt „ü“ oder „+®“ statt „é“!) und zu entpacken. Siehe Menüpunkt „komprimierte Datei betrachten / extrahieren“ unter Menü „Zip“ (ziemlich weit unten in diesem Text)!

„Beenden“

Beim Beenden wird nicht geprüft, ob etwaige Änderungen vorliegen. (Das muss man schon selber wissen! Ist schwierig in Java® zu implementieren, da man selbst die Änderungen nach halten muss, und kein Änderungs-Flag an den Feldern hat.) Es wird also ohne nachzugucken, ob Änderungen vorliegen, einfach nachgefragt, ob man irgendetwas (Dateiliste, Befehlsliste oder beides) sichern möchte. (Es werden jeweils alle Zeilen gesichert, nicht nur die selektierten. Notfalls „Beenden“ abbrechen und „Markierte Zeilen in CSV-Datei sichern“!) Im Folgenden kann das Sichern jeweils noch abgebrochen werden, das Beenden selbst jedoch nur vorher (bei der genannten Abfrage kann man „Abbrechen“ drücken, statt etwas auszuwählen)..

Dateiliste

Dieses Menü enthält alle Menüpunkte, die für das (un-) markieren von Dateien notwendig sind, für das Laden und Sichern der Dateiliste usw.

„Laden“

Erlaubt die Auswahl von Dateien und Verzeichnissen. Die Verzeichnisse werden nach Dateien durchsucht, wenn dabei auf (Unter-) Verzeichnisse gestoßen wird, werden diese wiederum durchsucht usw. (rekursiv, für Leute die Fachchinesisch können). Dabei werden entweder alle Dateien genommen, alle Textdateien, oder entsprechend den Erweiterungen in der Datei „Erweiterungen.txt“ im aktuellen Verzeichnis. So kann man mit wenigen Klicks eine Menge von Hunderten oder sogar Tausenden von – schon ziemlich gut definierten – Datei-Einträgen laden.

Diese können dann so manipuliert werden oder mit entsprechenden Befehlen / Menüpunkten vorher noch genauer gefiltert werden. Dazu markiert man (mit den entsprechenden Befehlen / Menüpunkten oder durch Klicks, eventuell mit CTRL- oder SHIFT-Taste [deutsch: STRG- bzw. Großbuchstaben-Umschalter]) immer die Dateien, die man NICHT haben will, und kann diese dann entfernen (s.u.).

Die Datei „Erweiterungen.txt“ enthält einfach die Erweiterungen (Extensions), ohne den Punkt („.“), genau eine Erweiterung je Zeile. Kommentare oder ähnliches sind nicht vorgesehen. Beispiel für den Inhalt von „Erweiterungen.txt“:
mp3
m4a

Wenn man nun „Laden“ aufruft, bekommt man die Auswahl zwischen den „Standarddateien (Erweiterungen.txt)“ (statt „Textdateien“) und „Alle Dateien“ (im Feld „ Dateityp“). Will man nur die mp3- und m4a-Dateien wählt man „Standarddateien (Erweiterungen.txt)“ und dann das (bzw. die) Verzeichnis(se), die durchsucht werden sollen. Es werden dann alle Dateien aus dem (den) gewähltem (gewählten) Verzeichnis(en) angezeigt, die eine der Erweiterungen haben, die in der „Erweiterungen.txt“ gelistet sind. Diese Datei kann bei laufendem (Programm-) Betrieb, jeweils vor dem Aufruf von „Laden“, geändert werden. Achtung! Bei Windoof kann die Erweiterungen.txt“ kein Link („Verknüpfung“) sein! (Die „Ersetze_Winbatch“ kann verlinkt werden; unter Eigenschaften sollte dann das Verzeichnis eingestellt werden, in dem die „Erweiterungen.txt“ gesucht werden soll. [Standardmäßig ist das das Verzeichnis, auf das der Link zeigt!])

„Aus CSV-Datei laden“

Lädt die Liste der Datei-Einträge fix und fertig aus der gewählten CSV-Datei („CSV“ bedeutet „Comma Seperated Values“ und ist ein Format, das auch viele Spreadsheet- / Tabellenkalkulationsprogramme bearbeiten können. Es ist lesbar und kann notfalls auch mit einem gewöhnlichen Textverarbeitungsprogramm manipuliert werden. Es kann auch von diesem Programm erzeugt werden, siehe nächster Menüpunkt. Anmerkung noch: „CSV“ ist ein sehr allgemeines Format, die Dateiliste muss ein sehr spezielles haben!)

„Markierte Zeilen in CSV-Datei sichern“

Schreibt die markierten Zeilen der Liste der Datei-Einträge in eine CSV-Datei (speziellen Formats). Diese Datei kann wieder eingelesen werden und zuvor noch mit Tabellenkalkulations- oder Textverarbeitungsprogrammen manipuliert werden

Der Name für die Datei wird abgefragt, es wird allerdings auch ein Standard vorgegeben.

„Alles markieren“

Markiert einfach alle Einträge in der Dateiliste.

„Markierung überall aufheben“

Tut das genaue Gegenteil des vorherigen Menüpunktes.

„Markierung umkehren“

Markiert alle Einträge in der Dateiliste, die nicht markiert waren, und hebt die Markierung für alle anderen auf.

Zeilen zusätzlich markieren, wenn

Hat sechs Unterpunkte. Markiert jeweils alle Datei-Einträge, auf die eine bestimmte Art Bedingung zutrifft bzw. gerade nicht zutrifft. Siehe Unterpunkte!

„Suchbedingung zutrifft“

Suchbedingung ist ein regulärer Ausdruck. Siehe also Hilfe zu „Suchbedingung/Regulärer Ausdruck“.

Es werden all die Zeilen (sprich: Datei-Einträge) markiert, auf die die Suchbedingung / der reguläre Ausdruck zutrifft.

Abgefragt wird die Suchbedingung / der reguläre Ausdruck und auf welche Spalte er angewendet werden soll („Suche in:“, z.B. der Verzeichnisname der ursprünglichen Datei – „Verzeichnisname (alt)“).

Beispiel:

Man gibt die Suchbedingung „Replace“ vor und sucht in „Verzeichnisname (alt)“. Daraufhin werden alle Zeilen markiert, die sich auf Dateien beziehen, die sich in einem Verzeichnis befinden, dessen Name irgendwo „Replace“ enthält, also beispielsweise „Replace_WinBatch“ und alle direkten oder indirekten Unterverzeichnisse.

Suchbedingung kann zunächst einmal jeder übliche Text sein, allerdings mit einer Ausnahme: Es gibt Zeichen, die bei regulären Ausdrücken Sonderbedeutung haben. Dazu gehören insbesondere der Punkt („.“), der Backslash („\“), und alle Arten von Klammern (egal ob rund, eckig oder geschweift) (Aufzählung ist nicht abschließend!). Lösung: Man legt eine entsprechende Befehls-Zeile an, benutzt die Eingabehilfe (s.u.), markiert die ganze Zeichenkette, die gesucht werden soll und wählt im Menü „Klammerung“ den Punkt „\Q ... \E“ (s.u.). Alles, was zwischen „\Q“ und „\E“ steht wird sozusagen wörtlich genommen („\Q“ steht meines Wissens für englisch „Quote“ [= „Zitiere“]): Die Sonderbedeutung irgendwelcher Zeichen ist aufgehoben in dem derart eingeschlossenen Text! (Bei Aufruf des Menüpunktes ist noch eine Lösung eingebaut, für den Fall, dass die Suchbedingung selbst „\E“ enthalten sollte.)

Reguläre Ausdrücke können ein sehr mächtiges Werkzeug sein, wie kleine Programme. Das führt dazu, dass man sie auch so debuggen muss: Ich habe schon mal über eine Stunde damit zugebracht, Fehler in einer regexp zu finden!

„Größe zwischen ...“

Es werden alle Zeilen (Datei-Einträge) markiert, wenn die Dateigröße (in Byte) zwischen einem Minimal- und einem Maximalwert liegt. Beide werden abgefragt. Die Standardwerte sind so gewählt, dass alle Einträge erfasst werden. Wenn man den Minimalwert auf 0 lässt, wird automatisch nur der Maximalwert betrachtet, denn alle Dateien sind mindestens 0 Byte groß. Umgekehrt: Man gibt einen Minimalwert vor und lässt den Maximalwert auf 99999999999 stehen: dann wird im Zweifel nur der Minimalwert wirksam – Dateien größer als ca. 99 GB dürfte es kaum geben (wenn doch, muss man den Maximalwert noch erhöhen). Achtung: Punkte o.ä. sind in den Zahlen leider nicht zulässig!

„letzte Änderung zwischen ...“

Analog zu vorigem Menüpunkt. Achtung! Das Datumsformat muss eingehalten werden: Tag.Monat.Jahr Stunde:Minute:Sekunde, also beispielsweise „1.1.2007 12:30:0“. Sekunden können wie alle Zahlen (bis auf das Jahr) einstellig sein. Das Jahr sollte vierstellig eingegeben werden, „08“ wird als „1908“ interpretiert!

„wahrscheinlich identisch“

Prüft, ob Datei (alt) und Datei (neu) bei einer Zeile wahrscheinlich identisch sind. Datei-Datum und -Größe müssen dafür übereinstimmen. Wahrscheinlich identische Dateien kann man ruhigen Gewissens z.B. bei einem Kopiervorgang ausschließen.

„definitiv gleich“

Prüft, ob Datei (alt) und Datei (neu) definitiv gleich sind. Dazu wird der Inhalt beider Dateien gelesen und verglichen, Byte für Byte. Definitiv gleiche Dateien kann man in jedem Fall z.B. bei einem Kopiervorgang ausschließen.

„Suchbedingung NICHT zutrifft“

Es werden all die Zeilen (Datei-Einträge) markiert, auf die die Suchbedingung / der reguläre Ausdruck NICHT zutrifft. Ansonsten völlig analog zu „Suchbedingung zutrifft“.

„Größe außerhalb von ...“

Es werden alle Zeilen (Datei-Einträge) markiert, wenn die Dateigröße (in Byte) NICHT zwischen einem Minimal- und einem Maximalwert liegt, deren Größe also entweder unter.dem Minimalwert oder über dem vorgegeben Maximalwert liegt. Gegenteil von „Größe zwischen ...“, siehe auch dort!

„letzte Änderung außerhalb von ...“

Gegenteil von „letzte Änderung zwischen ...“.

Markierung aufheben, wenn …

Dieses Untermenü ist völlig analog zu „Zeilen zusätzlich markieren, wenn“, jedoch wird die Markierung jeweils aufgehoben, wenn die Bedingung erfüllt bzw. nicht erfüllt ist. Achtung! Normalerweise werden die markierten Zeilen am Schluss entfernt, „Markierung aufheben“ bedeutet also normalerweise gerade „drin lassen“.

„Ersetzen auf markierten Dateien“

Das Ersetzen funktioniert nur auf Textdateien und natürlich auf dem Verzeichnis- oder Dateinamen (bzw. der Erweiterung). Zuerst wird eine Suchbedingung abgefragt. Suchbedingung ist ein regulärer Ausdruck. Siehe also wieder Hilfe zu „Suchbedingung/Regulärer Ausdruck“. Jede Zeichenkette die der Suchbedingung entspricht, wird durch die nun abgefragte Zeichenkette ersetzt. Die Ausgabe erfolgt als „Verzeichnisname (neu)“ bzw. „Dateiname (neu)“ oder „Erweiterung (neu)“ bzw. als Inhalt einer Datei, die unter „Verzeichnisname (neu)“ mit „Dateiname (neu)“ und „Erweiterung (neu)“ angelegt wurde.

Besonderheit: „\“ ist sowohl bei der Suchbedingung als auch bei der Zeichenkette zum Ersetzen das „Escape-Zeichen“, muss also jeweils verdoppelt werden. Beim Ersetzen wird der Rest der Zeichenkette literal („wörtlich“) genommen, das heißt z.B. „\n“ ergibt keine Zeilenschaltung, sondern ein nicht verdoppelter „\“ wird ignoriert, Ergebnis ist ein schlichtes „n“. Wenn also mehrzeilige Texte eingefügt werden sollen, greift man auf die Eingabehilfe zurück (s.u.).

Beispiel:

„C:\\Dokumente und Einstellungen\\<Benutzername>\\Eigene Dateien“ wird durch „I:“ auf dem „Verzeichnisname (alt)“ ersetzt. Dann ersetzt man irgendeine Zeichenkette auf „Dateiinhalt (alt)“. Es wird eine neue Datei auf Laufwerk „I“ angelegt (in einem entsprechenden Unterverzeichnis). Die neue Datei entspricht der alten, nur dass eine Zeichenkette anders ist.

Siehe auch die Anmerkung zur Suchbedingung unter „Zeilen zusätzlich markieren, wenn“→„Suchbedingung zutrifft“ (weiter oben).

„Markierte GROSS“

Funktioniert im Prinzip wie das Ersetzen, jedoch wird einfach der ursprüngliche Text genommen und in Großbuchstaben verwandelt. Abgefragt wird nur die Spalte, auf der das geschehen soll, der Rest liegt ja fest (im Gegensatz zum vorherigen Menüpunkte).

Achtung! Unter Windows sind Datei- oder Verzeichnisnamen identisch, wenn sie sich nur hinsichtlich der Groß- / Kleinschreibung unterscheiden!

„Markierte klein“

Wie vorheriger Menüpunkt, nur Klein- statt Großbustaben.

„Markierte GROSSklein (z.B. "Abc")“

Nur der erste Buchstabe der gesamten Zeichenkette wird groß geschrieben der ganze Rest klein.

„Markierte Dateien (unverändert) kopieren“

Kopiert für alle markierten Datei-Einträge von Verzeichnis (alt), Dateiname (alt) + Erweiterung (alt) auf Verzeichnis (neu) unter Verwendung von Dateiname (neu) + Erweiterung (neu) ohne den Dateiinhalt irgendwie zu verändern. Funktioniert – im Gegensatz zu „Ersetzen auf markierten Dateien“ – auch auf Nicht-Textdateien (Binärdateien, z.B. mp3). Das Datum der neuen Dateien ist dabei das aktuelle (im Gegensatz zu folgendem Menüpunkt).

Ist nicht übermäßig schnell, braucht ca. 50 % mehr Zeit als das Betriebssystem, bietet aber den Vorteil, dass man nach unterschiedlichsten Kriterien eine Auswahl treffen, und der Verzeichnisbaum trotzdem erhalten werden kann (soweit man will).

„Markierte Dateien (unverändert) kopieren, Dateidatum beibehalten“

Wie vor, jedoch wird das Dateidatum (letzte Änderung) auf das der jeweils ursprünglichen Datei gesetzt. Gut für Backup and Restore, außerdem kann man (auch auf Betriebssystem-Ebene!) die Dateien noch nach Datum filtern (auswählen).

„Markierte: ("grep") Behalte nur Zeilen mit ...“

Arbeitet entsprechend dem UNIX-Kommando „grep“. Die Ausgabedatei („Verzeichnisname (neu)“, „Dateiname (neu)“ usw.) enthält nur die Zeilen des Dateiinhalts (alt oder neu, wird abgefragt), auf die die vorgegebene Suchbedingung zutrifft.

Achtung! Man sollte im Zweifel (im Zweifel befinden sich EDV-Leute immer im Zweifel ;-) ) vorher „Verzeichnisname (neu)“, „Dateiname (neu)“ usw. so setzen, dass (eine) neue Datei(en) angelegt und nicht die ursprüngliche(n) überschrieben wird (werden).

Alternativ dazu kann man auch auswählen, dass an die (Ausgabe-) Datei(en) angefügt werden soll. Diese Option (wird abgefragt bzw. kann bei einer entsprechenden Befehlszeile als „a“ [überschreiben = Nicht anhängen = „n“] in der letzten Spalte angegeben werden) sollte man vor allem dann wählen, wenn die gesamte Ausgabe in nur einer Datei landen soll. Der jeweilige volle Pfadname der Eingabe-Datei wird dann zu Anfang jeder Ausgabe mit der Zeilennummer „0000000“ vorangestellt. Das kann man durch ein "grep not" mit der Suchbedingung „(?m)^0{7} “ (bevor man die Zeilennummern rausgeschmissen hat, siehe nächster Abschnitt!) eleminieren. Danach gegebenenfalls zweimal Zeilennummern entfernen (siehe nächster Abschnitt!)!

Die Ausgabe enthält Zeilennummern (siebenstellig) mit einem Leerzeichen getrennt vor jeder Zeile. Wen das stört, der ersetze direkt in Anschluss „(?m)^\d{7} “ auf „Dateiinhalt (neu)“ durch gar nichts, dann ist es ohne Zeilennummern. (Beachte: Leerzeichen am Ende der Suchbedingung!)

„Markierte: ("grep not") Behalte nur Zeilen OHNE ...“

Analog zu vorigem Menüpunkt, nur werden jetzt die Zeilen behalten, auf die die Suchbedingung gerade nicht zutrifft. Das zu den Zeilennummern gesagte gilt völlig analog.

„Statistik der markierten Dateien“

Gibt summarische Informationen über die markierten Dateien (Gesamt-, Minimal- und Maximalgröße, ältestes und neuestes Dateidatum).

„Statistik ALLER Dateien“

Völlig analog zu vorhergehendem Menüpunkt. Gibt summarische Informationen über die alle Dateien.

„Markierte Zeilen entfernen“

Entfernt alle Dateieinträge aus der Liste entsprechend der Markierung. Die zugrundeliegenden Dateien selbst bleiben erhalten.

„ALLE Zeilen entfernen“

Geht schneller als „Alles markieren“ und dann „Markierte Zeilen entfernen“, hat aber denselben Effekt.

„Markierte Zeilen entfernen inklusive Löschen der zugrundeliegenden Dateien“

Entfernt alle Dateieinträge aus der Liste entsprechend der Markierung. Die zugrundeliegenden Dateien werden mit gelöscht!

Befehlsliste

Dieses Menü enthält alle Menüpunkte, die für die Manipulation der Tabelle mit den Befehlen zuständig sind.

Das Prinzip ist: Befehle spezifizieren (d.h., die Felder der betreffenden Zeile – soweit nötig – ausfüllen), markieren und dann (der Reihe nach) ausführen (mit dem entsprechenden Menüpunkt, s.u.). Die Spezifikation eines Befehls umfasst:

Achtung! Die Ergebnisse werden immer in die Spalten „neu“ geschrieben, die ursprüngliche Datei (bzw. ihr Eintrag / ihre Zeile) bleibt immer unverändert!

Folge: Wenn man z.B. mehrere Ersetzungen auf den gegebenen Dateien machen will, braucht man hierzu mehrere Befehle, von dem der erste zwar (vielleicht) auf den „Dateiinhalt (alt)“ läuft, die folgenden dann aber auf den „Dateiinhalt (neu)“.

„Befehlsliste aus CSV-Datei laden“

Funktioniert analog zu dem entsprechende Menüpunkt unter „Dateiliste“. Siehe dort!

„Markierte Befehle in CSV-Datei sichern“

Funktioniert analog zu dem entsprechende Menüpunkt unter „Dateiliste“. Siehe dort!

Einzige Besonderheit: Es können sich mehrzeilige Feld-Einträge in der erzeugten Datei befinden. Damit kommen nicht alle Tabellenkalkulations-Programme zurecht, die Dateien können jedoch ohne Probleme mit einem Texteditor bearbeitet und wieder eingelesen werden.

„Zeile neu vor“

Fügt vor der (hoffentlich einzigen ;-) ) ausgewählten Befehls-Zeile eine neue Zeile ein.

Der Cursor sollte bei Auswahl dieses Menüpunktes nicht auf einer der ersten beiden Spalten (mit den Auswahlfeldern) stehen.

„Zeile neu hinter“

Fügt hinter der (hoffentlich einzigen ;-) ) ausgewählten Befehls-Zeile eine neue Zeile ein.

Der Cursor sollte bei Auswahl dieses Menüpunktes nicht auf einer der ersten beiden Spalten (mit den Auswahlfeldern) stehen.

„Zeile kopieren“

Kopiert die zuletzt ausgewählte (markierte) Zeile (sollte normalerweise nur eine sein). Mehrere Zeilen können hintereinander kopiert und dann in umgekehrter Reihenfolge wieder eingefügt werden (Lifo-Speicher; Stack; Kellerspeicher).

„Zeile einfügen vor“

Fügt die zuletzt kopierte Zeile ein, wenn diese schon eingefügt wurde, die davor kopierte usw., VOR der aktuell zuletzt markierten.

Einziges Problem: Der Cursor sollte nicht auf einer der ersten beiden Spalten (mit den Auswahlfeldern) stehen, sonst wird der Wert der jeweiligen Spalte nicht richtig angezeigt.

„Zeile einfügen hinter“

Einfügen der zuletzt kopierte Zeile, aber hinter der (hoffentlich einzigen ;-) ) ausgewählten. Problem: s.o.!

„Alle Zeilen markieren“

Wählt alle Befehlszeilen aus. Wenn man die Befehle-Tabelle komplett löschen will, wählt man zunächst diesen Menüpunkt und dann den folgenden.

„Markierte Zeilen löschen“

Die markierten Zeilen werden unwiderruflich gelöscht.

„Markierte Befehle auf ALLEN Dateien ausführen“

Die markierten (und nur die!) Befehlszeilen werden jeweils auf allen (nicht nur den markierten!) Dateien (Zeilen der Dateiliste) ausgeführt.

Will man alle Befehle ausführen, wählt man vorher „Alle Zeilen markieren“.

Zip

„komprimierte Datei betrachten / extrahieren“

Befindet sich noch im Experimental-Stadium. Ist vor allem gedacht, um die mit „Backup“ erzeugten Zip-Dateien zu betrachten und zu extrahieren.

Einfach eine Zip-Datei auswählen, indem man den entsprechenden Button (die entsprechende Schaltfläche) anklickt! Danach den Pfad auswählen (wohin man die Datei(en) extrahieren will). Dann wahlweise nur die markierten oder alle Dateien extrahieren. Unterverzeichnisse unter dem ausgewählten Pfad werden nach Bedarf angelegt.

Probleme: Siehe Punkt „Backup“ unter Hilfe→Lies mich unbedingt!

Hilfe

Hier finden Sie alle Informationen rund um das Programm (außer der, die Sie gerad' suchen ;-) ).

„Lies mich unbedingt!“

Den Menüpunkt sollten Sie unbedingt aufrufen, wenn Sie das Programm zum ersten Mal starten!

„Installation“

… ist schon gelaufen, wenn Sie den Menüpunkt aufrufen können.

„Einführung“

Zeigt diese Datei an.

„Suchbedingung/Regulärer Ausdruck“

Zeigt eine (relativ) kurze Einführung bzgl. der „regulären Ausdrücke“ an. Habe mir die Mühe gemacht, selbst auf Deutsch zu formulieren, was „regexp“ in Java® so können (oder auch nicht ;-) ). Wer sich schon im Prinzip auskennt, der findet kurze Infos als sogenannte „ToolTipTexte“ bei den Auswahlfeldern der Eingabehilfe-Maske zu „Finde/Ersetze/...“ (s. auch dort die Menüs „Klammerung“ und „Einfügen“).

„Eingabehilfe“

Wenn der Cursor auf der Befehlsliste in einer der beiden Spalten „Finde/Ersetze/....“ oder „Ersetze durch/...“ steht, werden durch Auswahl diese Menüpunktes Masken zwecks Eingabe in die jeweiligen Felder angezeigt. Vor allem für die Eingabe regulärer Ausdrücke gibt es dort zahlreiche Hilfen.

„Autoren“

… war bisher zumindest nur einer ;-) !

„Lizenz“

Zeigt den Text der „GNU Lesser General Public License“ („LGPL“) an. (Allerdings im englischen Original, deutsch gibt es nur eine inoffizielle Version unter http://www.gnu.de/documents/lgpl-2.1.de.html.)

Eingabehilfe [Finde/Ersetze/usw.]

Wenn der Cursor auf der Befehlsliste in der Spalte „Finde/Ersetze/....“ steht (Doppelklick!), wird diese Maske – nach Drücken von CTRL- / STRG-E bzw. Auswahl des Menüpunktes „Eingabehilfe“ – zwecks Eingabe angezeigt. Vor allem für die Eingabe regulärer Ausdrücke gibt es dort zahlreiche Hilfen.

Diese Maske enthält vier Menüs und zahlreiche Auswahlfelder (Comboboxen).

Die Auswahlfelder sind (bis auf eine Ausnahme) alle nach demselben Muster gestrickt. Durch Anklicken wird der jeweilige ausgewählte Wert eingefügt (an der Cursorposition, oder – falls Text ausgewählt ist – für diesen). (Ausnahme: Das zweite Feld von links.) Damit man weiß, welche Bedeutung die eingefügten Zeichen haben, gibt es passend zu jedem anklickbaren Wert einen sogenannten „ToolTipText“, also einen Text, der – nach wenigen Sekunden – angezeigt wird, wenn der Mauszeiger (Cursor) über der entsprechenden Zeile ruht. Die Bedeutung der Werte ist im einzelnen unter Hilfe zu „Suchbedingung/Regulärer Ausdruck“ beschrieben.

Die Menü(punkte) haben die folgende Bedeutung.

Datei

Im Datei-Menü sind nur die Punkte zum regulären Beenden und zum Abbrechen der Eingabe.

„Beenden“

Reguläres Beenden: Die Anzeige im Befehls-Tabellenfeld wird aktualisiert und die Maske geschlossen.

„Abbrechen“

Die Anzeige im Befehls-Tabellenfeld wird NICHT aktualisiert,aber die Maske geschlossen.

Bearbeiten

In diesem Menü ist nur der Punkt „Rückgängig“; Ausschneiden, Kopieren und Einfügen von Text gehen über die normalen Tastenkombinationen, die ohnehin für das jeweilige Betriebssystem standardmäßig vorhanden sind (unter Windows; CTRL-X, -C, -V).

„Rückgängig“

Macht die letzte Eingabe rückgängig.

Klammerung

Diese Menüpunkte verhalten sich alle ähnlich: Der markierte Text wird irgendwie eingeklammert, also beispielsweise in runde oder eckige Klammern eingeschlossen. Genaueres siehe einzelne Menüpunkte!

„Gruppieren ( ... )“

Schließt den markierten Text in runde Klammern ein. Der Text in runden Klammern ist ein Teil des regulären Ausdruck, eine sogenannte Gruppe. Beim Ersetze-durch-Text kann eine Gruppe durch $1 bis $9 referenziert werden. Zur Nummerierung der Gruppen werden die (runden) Klammern von innen nach außen und von links nach rechts gezählt. $0 referenziert den ganzen gefundenen Text.

Beispiel:

(\d+),(\d+) passt auf eine deutsche Dezimalzahl mit mindestens einer Nachkommastelle (z.B. 123456,78). Die Vorkommastellen sind dann in der Gruppe 1 enthalten, die Nachkommastellen in Gruppe 2 und die ganze Zahl ist Gruppe 0. Der Ersetze-durch-Text könnte also lauten „Vorkommastellen = $1, Nachkommastellen = $2, Zahl = $0“. Die Benutzung von $3 bis $9 würde zu einem Fehler führen.

„Zeichenklasse [ ... ]“

Die eingeklammerten Zeichen sind Alternativen: [abc] würde bedeuten, dass an der betreffenden Stelle a, b oder c stehen dürfen.

„\Q ... \E“

In einem Text, der zwischen „\Q“ und „\E“ steht, ist jede Sonderbedeutung aufgehoben. „\“ gelten ohne Verdopplung, „\n“ ist wirklich ein „\“ und ein „n“ usw. Wichtig für Pfade unter Windows (die sind voller „\“'s). Damit es mit „\Eigene Dateien“ keine Probleme gibt, wird ein „\E“ durch diese Funktion durch „\\E\QE“ ersetzt. Anmerkung: „\Q“ steht wohl für (englisch) „Quotation“ („Zitat“), „\E“ für „End“.

„Häufigkeit { ... }“

Der eingeklammerte Text muss eine ganze Zahl ergeben, die aussagt, wie oft das vorhergehende Zeichen auftauchen soll. Der Wert muss genau eingehalten werden, also für „a{5}“ muss irgendwo im zu durchsuchenden Text „aaaaaa“ auftauchen.

„Häufigkeit {Minimum,}“

Analog zu dem vorhergehenden Menüpunkt, aber die Zahl bezeichnet jetzt die minimale Häufigkeit. „a{5,}“ würde also auch auf „aaaaaaaaaaa“ zutreffen, „\d{5,}“ auf jede mindestens fünfstellige (ganze) Zahl (eventuell einschließlich führender Nullen).

„Häufigkeit {,Maximum}“

Analog zu dem vorhergehenden Menüpunkt (mit maximal „a{,5}“ und „aaa“).

Einfügen

„Aktuelles Datum TT.MM.JJJJ HH:mm:ss“

Fügt das aktuelle Datum im angegebenen Format ein (z.B. „12.04.2010 04:44:37“).

„minimales Datum 1.1.1901 0:0:0“

Fügt einen Minimalwert für das Datum (der letzten Änderung) ein.

„minimale Zahl 0“

Fügt einen Minimalwert für eine Zahl (Dateigröße) ein.

Sonstiges

„Backslashes verdoppeln“

Macht im markierten Bereich aus „\“ jeweils ein „\\“.

Beispiel:

Aus „C:\Dokumente und Einstellungen\Harald\Eigene Dateien“ wird „C:\\Dokumente und Einstellungen\\Harald\\Eigene Dateien“.



Eingabehilfe [Ersetze durch/usw.]

Erlaubt die Eingabe mehrzeiliger Texte (für den Ersatz eines auf „Finde/Ersetze/Dateiname/Minimum“ spezifizierten Textes). Beim Ersatz von Text können die dabei durch runde Klammern gebildeten Gruppen durch $1 bis $9 (Besonderheit: $0) referenziert werden.

Einfaches Beispiel:

Suche „.(?s).*“, also alles (einschließlich Zeilenschaltungen). Ersetze durch „$0

Neuer_Text“.

So wird an jede Datei Neuer_Text angehängt. „Neuer_Text“ könnte beispielsweise eine neue Umgebungsvariablendefinition in allen „.profile“-Dateien auf einem UNIX-Rechner sein.

Datei

Diese Menü hat dieselbe Funktion wie bei der Eingabehilfe auf [Finde/Ersetze/usw.]. Siehe dort (Eingabehilfe [Finde/Ersetze/usw.])!

Bearbeiten

Diese Menü hat dieselbe Funktion wie bei der Eingabehilfe auf [Finde/Ersetze/usw.]. Siehe dort (Eingabehilfe [Finde/Ersetze/usw.])!

Einfügen

Diese Menü hat analoge Funktion zu dem bei der Eingabehilfe auf [Finde/Ersetze/usw.]. Statt dem Minimum wird jeweils ein Maximum eingefügt. Siehe „Eingabehilfe [Finde/Ersetze/usw.]“!

Sonstiges

Diese Menü hat dieselbe Funktion wie bei der Eingabehilfe auf [Finde/Ersetze/usw.]. Siehe dort (Eingabehilfe [Finde/Ersetze/usw.])!