Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Bash
Umleiten der Ausgabe
stdout → Datei
programm > datei.txt
stderr → Datei
programm 2> datei.txt
stdout und stderr → Datei
programm &> datei.txt
Erweiterung von Dateiname entfernen
# name without extension name=${filename%\.*}
Bulk-Rename
Um mehrere Dateien auf einmal umzubenennen (zum Beispiel ap2 in allen Dateien durch ap3 zu ersetzen):
for file in ap2* ; do mv $file `echo $file | sed 's/ap2/ap3/'`; done
Um die Umbenennung vorher gefahrlos zu testen, kann man ein echo einfügen:
for file in ap2* ; do echo mv $file `echo $file | sed 's/ap2/ap3/'`; done
Verzeichnis, aus dem Script gestartet wurde
DIR="$( cd "$( dirname "$0" )" && pwd )"
Gezieltes Blättern in der History
Um gezieltes Blättern oder Suchen in der History zu aktiveren, muss in /etc/inputrc
# search the history with arrow-up and arrow-down "\e[A": history-search-backward "\e[B": history-search-forward
eingefügt werden. Dann kann man den Anfang eines schonmal eingegebenen Befehls eingeben und mit Pfeil-Hoch und -Runter den richtigen aussuchen.
Wenn dies nur für einen einzelnen Benutzer aktiviert werden soll, werden die Befehle in ~/.inputrc geschrieben. Um die Einstellungen aus /etc/inputrc trotzdem zu laden, muss die Datei ~/.inputrc mit $include /etc/inputrc beginnen.
Nützliche Aliases
In der ~/.bash_aliases können Aliases für bestimmte Befehle definiert werden:
alias diff='colordiff' #use colored diff alias less='less -R' #make less work with colordiff
up-Funktion zum schnellen Verzeichiswechel
Farbige Ausgabe
Mit Escapesequenzen für das VT100-Terminal kann die Ausgabe eingefärbt werden. Wichtig ist dabei das -e, sonst werden Escapesequenzen nicht als solche ausgewertet.
red='\e[0;31m' NC='\e[0m' # No Color echo -e "${red}Hello${NC}"
Folgende Farbcodes können verwendet werden:
Farbe | Code | Farbe | Code |
---|---|---|---|
Black | 0;30 | Dark Gray | 1;30 |
Blue | 0;34 | Light Blue | 1;34 |
Green | 0;32 | Light Green | 1;32 |
Cyan | 0;36 | Light Cyan | 1;36 |
Red | 0;31 | Light Red | 1;31 |
Purple | 0;35 | Light Purple | 1;35 |
Brown/Orange | 0;33 | Yellow | 1;33 |
Light Gray | 0;37 | White | 1;37 |
weitere Informationen zu Kompatibilität, Blinken und mehr Farben