Sonderzeichen der Bash Shellkommandos der Bash (Übersicht) Der Editor vi Inhalt Index


Eingebaute Kommandos der Bash

alias Definiert Abkürzungen für ein Kommando
basename

Liefert den Dateinamen des übergebenen Pfades.

Beispiel

user@sonne> basename /home/user/linux.ps
linux.ps
user@sonne> basename /home/user/linux.ps ps
linux.  
		
break [n] Bricht Schleifen vorzeitig ab, durch Angabe eines Zahlenwertes n wird mit erster Anweisung nach der n-ten Schleifenebene fortgefahren.
case

Bedingte Mehrfachverzweigung. Es findet ein Mustervergleich zwischen Zeichenketten statt. Die Anweisungen nach dem ersten übereinstimmenden Muster bis zum Auftreten von ;; werden ausgeführt. Mehrere Muster können durch | zusammengefasst werden.

Beispiel

case $i in
  muster1 | muster2 ) kommando1;
                      kommando2;;
  muster3           ) kommando;;
  ...
esac       
		
cat << ende Liest aus aktueller Datei bis zum Auftreten der Zeichenkette ``ende''.
continue [n] Fährt mit Ausführung des nächsten Schleifendurchlaufs fort; der optionale Parameter n dient zum Sprung in eine äußere Schleifenebene.
declare

Weist einer Shellvariablen einen neuen Wert zu oder ändert ihre Eigenschaften.

Beispiel

# Variable darf nur gelesen werden:
declare -r PATH
# Variable ist global definiert:
declare -x global=5    
	
dialog Zur Anzeige von Dialogen.
Optionen
--clear Entfernt Dialog nach dessen Ende vom Bildschirm.
--title text Zeigt text als Dialogtitel an.
--msgbox text x y Zeigt text an, der mit <Enter> bestätigt werden muss. x gibt die Höhe und y die Breite an.
--infobox text x y Zeigt text an, ohne Bestätigung.
--yesno text x y Ja/Nein - Entscheidungsbox.
--inputbox text x y Eingabe einer Textzeile.
--textbox datei x y Ausgabe des Dateiinhalts.
--checklist text x y Auswahl mehrerer Optionen.
dirname Pfadname eines vollständigen Dateinamens.
dirs Liste der durch pushd gespeicherten Verzeichnisse.
echo Ausgabe einer Zeichenkette auf dem Bildschirm.
eval $var

Interpretiert Variableninhalt als Kommandozeile und führt diese aus (inklusive Substitution):

Beispiel

user@sonne> homepwd="cd ; pwd"
user@sonne> $homepwd
bash: cd;: command not found
user@sonne> eval $homepwd
/home/user        
	
exec Startet ein angebenes Kommando.
exit Beendet ein Shell-Programm, ein Rückgabewert kann angegeben werden.
export Deklariert eine globale Variable, mit Option -n wird eine Umgebungsvariable wieder zu einer normalen Shellvariablen.
expr

Dient zur Auswertung arithmetischer Ausdrücke oder zum Vergleich von Zeichenketten. Als Ergebnis liefert expr entweder die Anzahl der Zeichen zurück, die dem Muster entsprechen, oder, falls Teile des Musters in \(...\) eingeschlossen sind, die passende Zeichenkette.

Beispiel

user@sonne> expr abcdefghi : a.g
7
user@sonne> expr abc_egf_hij : .*_\(.*\)_.*
efg                    
		
file Versucht den Dateityp der übergebenen Datei zu bestimmen, mit Option -z wird versucht, den Typ einer komprimierten Datei zu erkennen.
for

Bildet eine Schleife "uber eine Liste von Zeichenketten:

Beispiel

for i in a b c; do
    echo $i
done  
		

Wird for innerhalb eines Shellprogrammes ohne in aufgerufen, wird die Variable mit der Liste der dem Programm übergebenen Parameter verbunden.

function name() Definiert eine Funktion.
if ...; then

Bedingte Verzweigung, der jeweilige Block wird nur ausgeführt, wenn die Bedingung erfüllt ist. Bedingungen können verschachtelt werden, ein optionaler else-Zweig wird behandelt, wenn keine Bedingung zutrifft.

Beispiel

if bedingung; then
   kommandos
elif bedingung; then
   kommandos
else
   kommandos
fi                  
		
local

Definiert innerhalb einer Funktion eine lokale Variable:

Beispiel

function Beispiel() {
   local a
   local text="Beispiel"
   ...
}      		
popd Wechselt in das zuletzt in pushd gespeicherte Verzeichnis.
printf

Formatierte Ausgaben ähnlich zu C (man -S 3 printf).

pushd Speichert aktuelles Verzeichnis und wechselt in ein angegebenes Verzeichnis.
pwd Print Working Directory; zeigt den aktuellen Verzeichnispfad an.
read Zur Eingabe von Text.
readonly Zeigt die schreibgeschützten Variablen der Shell an.
setterm Ändern der Einstellungen des Terminals.
shift [n] Verschiebt die Liste der Parameter um n Einträge. Das Kommando ist notwendig, wenn einem Shellprogramm mehr als 10 Parameter übergeben werden.
shopt Dient zum Anzeigen/Ändern der Shelloptionen. Durch diese kann das Verhalten der Bash gesteuert werden. Zum Beispiel lässt sich die Unterscheidung der Groß- und Kleinschreibung durch Aktivieren der Shelloption nocaseglob abschalten:
user@sonne> shopt -s nocaseglob	
user@sonne> ls b*
Bild1.gif         Buch.tar.gz  bla.pnm

# Rücksetzen der Shelloption
user@sonne> shopt -u nocaseglob	
	
sleep n Programm ``schläft'' für n Sekunden.
source Führt angegebene Datei aus, als würde sie im Programmtext stehen (analog zu ``include'' in C).
test

Dient zur Formulierung von Bedingungen. test liefert ``0'', wenn Bedingung erfüllt ist, und ``1'' sonst. Eine alternative Schreibweise ist [ ausdruck ].

Zeichenkettenvergleiche
[ zk ] 0, wenn Zeichenkette zk nicht leer ist.
[ -z zk ] 0, wenn Zeichenkette zk leer ist.
[ zk1 = zk2 ] 0, wenn Zeichenketten übereinstimmen.
[ zk1 != zk2 ] 1, wenn Zeichenketten übereinstimmen.
Für zwei Zahlen existieren folgende Vergleiche
-eq gleich
-ne ungleich
-gt größer als
-ge größer gleich
-lt kleiner als
-le kleiner gleich
Eigenschaften von Dateien können getestet werden:
[ -d datei ] 0, wenn datei ein Verzeichnis ist.
[ -e datei ] 0, wenn datei existiert.
[ -f datei ] 0, wenn datei eine ``normale'' Datei ist.
[ -L datei ] 0, wenn datei ein symbolischer Link ist.
[ -r datei ] 0, wenn datei gelesen werden kann.
[ -w datei ] 0, wenn datei geschrieben werden kann.
[ -x datei ] 0, wenn datei ausgeführt werden kann.
Bedingungen lassen sich verknüpfen:
[ !bed ] 0, wenn Bedingung nicht erfüllt ist.
[ bed1 -a bed2 ] 0, wenn beide Bedingungen erfüllt sind.
[ bed1 -o bed2 ] 0, wenn mind. eine Bedingung erfüllt ist.
trap

Führt ein Kommando in Abhängigkeit eines aufgetretenen Signals aus:

trap $(echo "SIGHUP") 1 - erzeugt die Ausgabe, falls das Signal ``SIGHUP'' aufgetreten ist.
trap -l - listet alle bekannten Signale auf.

ulimit

Begrenzt die verfügbaren Systemressourcen.

ulimit -d 4096- Der Prozess darf maximal 4k für sein Datensegment verwenden.

unalias Entfernt einen Alias.
unset Löscht eine Variable.
until

Bedingte Ausführung einer Schleife.

until bedingung; do
  kommandos
done  
	
wait [nr] Wartet auf Terminierung des angegebenen Hintergrundprozesses. Ohne Angabe von nr wird auf alle Hintergrundprozesse gewartet.
while

Bedingte Ausführung einer Schleife.

while bedingung; do
  kommandos
done  
	


Sonderzeichen der Bash Shellkommandos der Bash (Übersicht) Der Editor vi Inhalt Index