Shell
diff aus 2x STDOUT
Mittwoch, den 11. Januar 2012Man kann bei diff normalerweise nur einen der beiden Datei-Parameter durch ein “-” ersetzen, um diese Daten vom Standard-Input zu lesen. Was aber, wenn man die Ausgaben von zwei Programmen vergleichen und man diese nicht in Dateien zwischenspeichern will? Bei commandlinefu.com fand ich die Lösung: diff <( cmd1 ) <( cmd2 ) Man kann also [...]
Skip der ersten Zeile wenn leer
Mittwoch, den 21. Dezember 2011Heute hatte ich das Problem, eine leere Ausgabe des Programms “zip” zu unterdrücken, damit Cron mir keine Mail schickt, wenn es nichts zu zippen gibt. Findet zip nichts, was es einpacken kann, bekommt man die folgende Meldung: /usr/bin/zip -r /tmp/test.zip . -t `date -d “-1 days” +%Y-%m-%d` -i “*/bearbeitet/*” zip error: Nothing to do! (/tmp/test.zip) [...]
STDERROR in eine Variable umleiten
Donnerstag, den 3. Februar 2011Kann man die Fehlerausgabe eines Befehls in einer Variablen speichern und die Standardausgabe trotzdem weiterverarbeiten? Ja, man kann.
Dateien mit Sym- oder Hardlinks finden
Montag, den 19. Juli 2010Hier wird kurz gezeigt, wie man Dateien findet, auf die Symlinks zeigen und wie man herausfindet, welche Dateien miteinander per Hardlinks verknüpft sind.
set -x Ausgaben nur in eine Datei schreiben
Freitag, den 16. April 2010Der Schalter set -x (auch xtrace genannt) ist ein hilfreiches Werkzeug zum Debuggen von Shellskripten. Aber manchmal sieht man auf Grund der Vielzahl an Meldungen den Wald von lauter Bäumen nicht. Und der normale Anwender sollte davon besser auch nichts zu sehen bekommen. Daher sollte man nach getaner Kammerjägerei den Schalter wieder aus dem Skript [...]
Leerzeichen bei For-In-Schleifen in der bash
Donnerstag, den 22. Januar 2009Heute geht es um Daten, die innerhalb einer For-In-Schleife aus einer Datei gelesen werden und die Leerzeichen enthalten.
Alle Fehlermeldungen in einem Script umleiten
Mittwoch, den 14. Januar 2009Man kann in einem Shell-Script ja Ausgaben, die an den Standard-Fehler-Kanal STDERR gehen, mit 2>>dateiname.log in eine Datei umleiten. Dies muss aber für jeden Befehl einzeln gemacht werden. Es gibt aber bei der Bash eine Methode, die Umleitung für das gesamte Script zu machen. Dazu nutzt man eine Spezialform des Befehls exec: Werden als Parameter [...]
Das Quartal mit date berechnen
Donnerstag, den 27. Dezember 2007Das Unix-Kommando date kennt viele Format-Parameter aber leider keinen, der uns das Quartal ausgibt. Zum Glück lässt sich das aber mit Hilfe von expr berechnen. Wir können mit dem date-Befehl einen Ausdruck erstellen, den expr dann für uns ausrechnet. Wir bekommen das das aktuelle Quartal oder, wenn wir mit -d ein anders angeben, das des [...]
String in der Shell in Groß- oder Kleinbuchstaben wandeln
Montag, den 11. Juni 2007Mitunter will man in einem Shell-Script einen String ist Groß- oder Kleinbuchstaben wandeln. Das lässt sich recht einfach mit dem Kommando tr bewerkstelligen, welches auf vielen Systemen verfügbar ist.