Da wollte ich mal schnell ne Dateiliste ziehen um damit weiterzuarbeiten. Unter Windows kann man folgenden Befehl erfolgreich einsetzen:
C:\> dir /b
Kann man unter Linux auch probieren. Klappt nicht so. Statt dessen nimmt man ls. Aber ls hat so schöne viele verschiedene Parameter. Schnell in die Man-Page nachgeschaut:
/> ls -1b
So, jetzt haben wir die Liste. Elektronisch verarbeitbar wäre sie aber erst, wenn ich das in einer Datei hab. Also shiften wir die Ausgabe einfach in eine Datei um:
C:\> dir /b >> list.txt
oder in Linux
/> ls -1b >> list.txt
Macht einem die Arbeit wirklich leichter.
Wenn man Dateien sucht, ist das gerade, wenn Dateien vom System erstellt werden, immer etwas mühselig. Das wird sogar noch schlimmer, wenn man die dann löschen will. Unter Linux, wo auch sonst, gibt es einen tollen Befehl, der einem die Arbeit deutlich erleichtert:
find
Mithilfe von find kann man einfach Dateien anhand eines Filter finden und dann sogar direkt löschen. Das kann zum Beispiel so aussehen:
find -name "*.cs" -type f
Hier suche ich alle cs Dateien im aktuellen Ordner. Ich schränke auch auf Dateien ein (-type f)
find -not -name "*.cs" -type f
Hier suche ich nach allen Dateien, die keine cs Dateien sind. So einfach.
find ./ -not -name "*.cs" -type f
Durch den verweis auf einen Pfad geben ich an ob auch Unterordner durchsucht werden sollen. Und das Ganze kann ich jetzt sogar noch kombinieren:
find ./ -name "*.*_*" -not -name "*.cs" -type f
Und wenn ich mir dann habe ausgeben lassen, was die Suche so ergibt, kann ich, entsprechende Rechte vorausgesetzt, das Ganze direkt löschen:
find ./ -name "*.*_*" -not -name "*.cs" -type f -delete
Aber aufpassen, der fragt nicht nochmal nach.
Gibt's das auch für nativ Windows? Bestimmt, aber da würde ich es wahrscheinlich lieber selber schreiben...
GUIDs sind eine tolle Möglichkeit eine Eindeutigkeit z. B. an einem Datensatz zu erzeugen. Im Gegensatz zu Zahlenindetifiaktionen sind GUIDs absolut eindeutig und übergreifend. Als Entwickler braucht man immer mal wieder eine GUID für alle möglichen Zwecke. Deshalb haben wir ein kleines Programm entwickelt, dass einfach eine GUID erzeugt und in die Zwischenablage schiebt.
Kann man auch als App verknüpfen.
Regex ist ja dazu da irgendwas in einem Text zu finden. Das kann man dann zum Beispiel ersetzen. Oder anderweitig verwenden. Nun ist das aber auch ein Text. Wenn ich also Schlüsselwerte verwende, macht RegEx nicht unbedingt was es soll.
Ich möchte die Punkte durch unterstriche ersetzen: Also
mde.symolo.info -> mde_symolo_info
erster Versuch: _______________
Höh, so wollte ich das nicht. Liegt daran, dass der Punkt ein reserviertes Zeichen ist. Der Punkt beschreibt alles. Um jetzt den Punkt nicht als Schlüsselwert zu verwenden, kann man ein Schrägstrich vorranstellen und damit die Interpretation passend abändern:
Zweiter Versuch: mde_symolo_info
Yeah, war doch ganz einfach ;).
Intressante Links zu dem Thema: