Benutzer-Werkzeuge

Webseiten-Werkzeuge


bash

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
bash [2014/11/20 13:49] – [Bash] ollibash [2023/09/24 10:22] – [Nützliche Aliases] olli
Zeile 35: Zeile 35:
  
 ===== Gezieltes Blättern in der History ===== ===== Gezieltes Blättern in der History =====
-Um gezieltes Blättern oder Suchen in der History zu aktiveren, muss in /etc/inputrc+Um gezieltes Blättern oder Suchen in der History zu aktiveren, muss in ''/etc/inputrc''
 <code bash> <code bash>
 # search the history with arrow-up and arrow-down # search the history with arrow-up and arrow-down
Zeile 41: Zeile 41:
 "\e[B": history-search-forward "\e[B": history-search-forward
 </code> </code>
-eingefügt werden. Dann kann man den Anfang eines schonmal eingegebenen Befehls eingeben und mit Pfeil-Hoch und -Runter den richtigen aussuchen.+eingefügt werden. Dann kann man den Anfang eines schon mal eingegebenen Befehls eingeben und mit Pfeil-Hoch und -Runter den gewünschten 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+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. beginnen.
  
-===== Nützliche Aliases ===== +===== Aliases ===== 
-In der ~/.bash_aliases können Aliases für bestimmte Befehle definiert werden:+In der ''~/.bash_aliases'' können Aliases für Befehle definiert werden um schneller auf sie zugreifen zu können. 
 + 
 +Beispiel: 
 +<code bash> 
 +alias ls='ls --color=auto' 
 +</code> 
 + 
 +Mit ''type BEFEHL'' wird angezeigt, was sich hinter dem Alias ''BEFEHL'' verbirgt. 
 + 
 +Beispiel: 
 +<code bash> 
 +$ type ls 
 +ls is aliased to `ls --color=auto' 
 +</code> 
 + 
 +Um den Befehl ohne den Alias auszuführen, gibt es mehrere Möglichkeiten: 
 +  * Backslash: ''\ls'' 
 +  * command: ''command ls'' 
 +  * Voller Pfad: ''/bin/ls'' 
 +  * Anführungszeichen: ''%%"%%ls%%"%%'' oder ''%%'%%ls%%'%%'' 
 + 
 +==== Nützliche Aliases ==== 
 <code bash> <code bash>
 alias diff='colordiff' #use colored diff alias diff='colordiff' #use colored diff
 alias less='less -R' #make less work with colordiff alias less='less -R' #make less work with colordiff
 +alias ls='ls --color=auto' #use colors for ls
 +alias ll='ls -al' #show long ls format
 </code> </code>
  
-[[http://orangesplotch.com/bash-going-up/| up-Funktion]] zum schnellen Verzeichiswechel+[[http://orangesplotch.com/bash-going-up/|up-Funktion]] zum schnellen Verzeichniswechel: 
 +<code bash> 
 +# Go up directory tree X number of directories  
 +function up() {  
 + COUNTER="$@"; 
 + # default $COUNTER to 1 if it isn't already set  
 + if [[ -z $COUNTER ]]; then  
 + COUNTER=1  
 + fi  
 + # make sure $COUNTER is a number  
 + if [ $COUNTER -eq $COUNTER 2> /dev/null ];  
 + then nwd=`pwd` # Set new working directory (nwd) to current directory  
 + # Loop $nwd up directory tree one at a time  
 + until [[ $COUNTER -lt 1 ]]; do  
 + nwd=`dirname $nwd` 
 + let COUNTER-=1 
 + done  
 + cd $nwd # change directories to the new working directory  
 + else  
 + # print usage and return error  
 + echo "usage: up [NUMBER]"  
 + return 1 
 +        fi  
 +
 +</code> 
 +===== 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. 
 +<code bash> 
 +red='\e[0;31m' 
 +NC='\e[0m' # No Color 
 +echo -e "${red}Hello${NC}" 
 +</code> 
 +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| 
 + 
 +[[http://misc.flogisoft.com/bash/tip_colors_and_formatting|weitere Informationen zu Kompatibilität, Blinken und mehr Farben]] 
 + 
 +===== Debugging ===== 
 +Um Bash-Skripte zu debuggen, können sie mit ''-x'' aufgerufen werden: 
 +<code bash> 
 +bash -x ./script.sh 
 +</code> 
 +oder im Skript 
 +<code bash> 
 +set -x 
 +</code> 
 +gesetzt werden.
  
 +Für weitere Logging- und Debugmöglichkeiten siehe [[https://unix.stackexchange.com/questions/155551/how-to-debug-a-bash-script|hier]].
 + 
 {{tag>Coding}} {{tag>Coding}}
  
bash.txt · Zuletzt geändert: 2024/03/03 18:19 von olli