| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
| linux:bash [2008/01/26 01:54] – st | linux:bash [2016/02/04 13:45] (aktuell) – [Einstellungen festlegen] st |
|---|
| | ====== BASH ====== |
| | Die [[wpde>Bash|(GNU-) Bourne-Again Shell]] ist bei den meisten Distributionen die Standard-shell. |
| | |
| | **Komfortmerkmale** |
| | * Kommandovervollständigung (<TAB>-Taste), wenn die Eingabe nicht eindeutig ist werden bei mehrfachem drücken die Kandidaten angezeigt. |
| | * Befehlshistorie (''history'') löschen (''history -c'') |
| | * Befehle aus der Historie wieder zu verwenden (<STRG>-<R> bzw. mit der nach-oben-Pfeiltaste die Befehle durchblättern) |
| | sowie die Möglichkeit auf umfangreiche [[shellscripts:shellscripts|Scripting-Fähigkeiten]] zurückzugreifen macht das arbeiten auch jenseits von grafischen Benutzeroberflächen komfortabel. |
| | * <STRG>-<L> löscht den Bildschirm |
| | |
| | |
| | |
| | ===== Konfiguration ===== |
| | Die Konfiguration wird in zwei Dateien abgelegt: |
| | - ''.bash_profile'' enthält Einstellungen die nur beim Login eingelesen werden |
| | - ''.bashrc'' enthält Einstellungen die bei jedem Start eines Terminals oder einer [[Shells|Shell]] ausgewertet werden. |
| | dort kann man Aliase o.ä. einstellen. |
| | Siehe [[http://www.easylinux.de/2004/07/082-bash/|Shell konfigurieren - Schleichwege]]. |
| | |
| | |
| | |
| | ===== Einstellungen festlegen ===== |
| | |
| | Konfigurationsdateien |
| | |
| | **Login-Shell**: |
| | * /etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profile |
| | **Nicht-Login-Shell**: |
| | * /etc/bash.bashrc, ~/.bashrc |
| | |
| | **Systemweit**: als root entweder in |
| | * ''/etc/profile'' oder in |
| | * ''/etc/bash.bashrc'' editieren. |
| | |
| | **Benutzerspezifisch**: Jeder Benutzer kann natürlich auch seine eigene Bash-Konfiguration festlegen: |
| | * ''~/.bashrc'' oder |
| | * ''~/.bash_profile'' (hier Variablen mit EXPORT VAR="Wert"!) |
| | |
| | ==== Login-Prompt ==== |
| | |
| | Servername rot ansonsten alles schwarz: <file>PS1='\u@\[\033[01;31m\]\h\[\033[0;30m\]:\w\$ '</file> |
| | |
| | |
| | * [[http://wiki.ubuntuusers.de/Bash/Prompt|Prompt @ubuntuusers]] |
| | ===== Aliase ===== |
| | mit dem Befehl ''alias'' kann man eine Abkürzung für oft gebraucht Befehle anlegen, z.B. |
| | |
| | <code bash> |
| | alias l='ls $LS_OPTIONS -lA' |
| | alias ls='ls $ls_OPTIONS' |
| | alias ll='ls $ls_OPTIONS -l' |
| | alias la='ls $ls_OPTIONS -lA' |
| | alias lh='ls $ls_options -h -l' |
| | alias listening='sudo netstat -l -n -p -t -u -w' |
| | alias agi='sudo aptitude install $aptoptions $aptoptions2' |
| | alias agu='sudo aptitude update && sudo aptitude upgrade' |
| | alias agr='sudo aptitude remove $prog $prog2' |
| | alias msg='tail -f /var/log/messages | loco' |
| | alias search='find . -type f | xargs egrep -i "$string"' |
| | alias empty='cat $1 | grep -v "#" | sed -e '/^$/d'' |
| | alias ipf='iperf -P 1 -i 1 -p 5001 -w 56K -f k -t 10 -c' |
| | alias duh='du -h --max-depth=1' |
| | alias post='tail -n 100 /var/log/mail.info | loco ' |
| | </code> |
| | |
| | Die Zeichenketten beginned mit "$" sind Variablennamen, die die Möglichkeit geben der Abkürzung/dem Alias noch zusätzliche Parameter mitzugeben. |
| | |
| | :!: Rückgängig machen geht mit ''unalias'' |
| | |
| | |
| | ===== Links ===== |
| | * [[http://home.arcor.de/dfcgen/refcards/bash.pdf|Bash-Scripting Kurzreferenz]] |
| | * [[http://www.linux.org/docs/ldp/howto/Bash-Prompt-HOWTO/|Bash Prompt HOWTO]] |
| | * **[[http://bash-hackers.org/wiki/doku.php/|Bash Hackers Wiki]]** |
| | * [[http://www.ibm.com/developerworks/linux/library/l-tip-prompt/|Tip: Prompt magic]] |
| | * [[http://www.delight.ch/linux/bash-script-howto/Kap05.html#m5|spezielle Bash-Variablen]] |
| | * [[http://www.deadman.org/bash.html|Deadmans “Advancing in the Bash Shell”]] |
| | * [[http://www.unixguide.net/unix/bash/|BASH FAQ]] |
| | * [[http://www.ijon.de/comp/tutorials/bash.html|bash und readline für Nicht-mehr-Anfänger]] |
| | * [[http://www.tldp.org/LDP/abs/html/sample-bashrc.html|A Sample .bashrc File]] |
| | * [[http://www.gossiplabs.org/log4bash.html|log4bash]] |
| | |
| | |
| | |
| |