Bash Aufgaben: Unterschied zwischen den Versionen

Aus xinux.net
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
==Aufgaben==
+
==Einfaches Skripten==
  
 
# Reihen sie die Befehle: date, hostname und pwd in einem skript aneinander und führen sie es aus
 
# Reihen sie die Befehle: date, hostname und pwd in einem skript aneinander und führen sie es aus
Zeile 6: Zeile 6:
 
## Und wie unterscheiden sie sich?
 
## Und wie unterscheiden sie sich?
  
==Skalare Variablen==
+
==Variablen==
 +
 
 +
===Skalare Variablen===
  
 
# Ordnen sie der Variable GLAS den wert bier zu
 
# Ordnen sie der Variable GLAS den wert bier zu
Zeile 13: Zeile 15:
 
## Lassen sie sich über den Variablen wert den Inhalt des Verzeichnisses anzeigen
 
## Lassen sie sich über den Variablen wert den Inhalt des Verzeichnisses anzeigen
  
==Feld Variablen==
+
===Feld Variablen===
  
 
# Ordnen sie der Variable FARBE die werte schwarz, rot und gold zu
 
# Ordnen sie der Variable FARBE die werte schwarz, rot und gold zu
 
## Lassen sie sich jeweils jeden wert ausgeben
 
## Lassen sie sich jeweils jeden wert ausgeben
  
==Kommando Substitution==
+
===Kommando Substitution===
  
 
# Definieren sie Kommando Substitution
 
# Definieren sie Kommando Substitution
Zeile 26: Zeile 28:
 
# Wie kann man mit whoami in sein home-Verzeichnis wechseln
 
# Wie kann man mit whoami in sein home-Verzeichnis wechseln
  
==Abgrenzen von Variablen (Parameterexpansion)==
+
===Abgrenzen von Variablen (Parameterexpansion)===
  
 
# Definieren sie 3 Variablen, wobei die dritte sich aus den ersten beiden zusammensetzt. Bsp.: SUX, TUX und SUXTUX
 
# Definieren sie 3 Variablen, wobei die dritte sich aus den ersten beiden zusammensetzt. Bsp.: SUX, TUX und SUXTUX
 
# Geben sie diese Variablen in allen Abgrenzungsmöglichkeiten wieder
 
# Geben sie diese Variablen in allen Abgrenzungsmöglichkeiten wieder
  
==Weitere Mechanismen zur Parameterexpansion==
+
===Weitere Mechanismen zur Parameterexpansion===
  
 
# Beschreiben sie was bei den folgenden Parameterexpansionen passiert
 
# Beschreiben sie was bei den folgenden Parameterexpansionen passiert

Version vom 27. Juli 2011, 12:52 Uhr

Einfaches Skripten

  1. Reihen sie die Befehle: date, hostname und pwd in einem skript aneinander und führen sie es aus
  2. Wie bestimmt man welcher Shell das Skript übergeben wird?
  3. Welche Möglichkeiten gibt es ein Skript aufzurufen?
    1. Und wie unterscheiden sie sich?

Variablen

Skalare Variablen

  1. Ordnen sie der Variable GLAS den wert bier zu
    1. Geben sie den wert der Variable aus
  2. Ordnen sie einer beliebigen Variable den wert eines Verzeichnispfades zu
    1. Lassen sie sich über den Variablen wert den Inhalt des Verzeichnisses anzeigen

Feld Variablen

  1. Ordnen sie der Variable FARBE die werte schwarz, rot und gold zu
    1. Lassen sie sich jeweils jeden wert ausgeben

Kommando Substitution

  1. Definieren sie Kommando Substitution
  2. Geben sie die beiden Varianten der Kommando Substitution an
    1. Was ist der Unterschied?
  3. Ordnern Sie die Ausgabe von date einer beliebigen Variable zu
  4. Wie kann man mit whoami in sein home-Verzeichnis wechseln

Abgrenzen von Variablen (Parameterexpansion)

  1. Definieren sie 3 Variablen, wobei die dritte sich aus den ersten beiden zusammensetzt. Bsp.: SUX, TUX und SUXTUX
  2. Geben sie diese Variablen in allen Abgrenzungsmöglichkeiten wieder

Weitere Mechanismen zur Parameterexpansion

  1. Beschreiben sie was bei den folgenden Parameterexpansionen passiert
thomas@dozent:~$ echo ${FARBE:-rot}
thomas@dozent:~$ echo ${FARBE:=rot}
thomas@dozent:~$ echo ${FARBE:?keine farbe}
thomas@dozent:~$ echo ${FARBE:+rot} 
thomas@dozent:~$ echo ${FARBE:3}
thomas@dozent:~$ echo ${FARBE:5:3}
thomas@dozent:~$ echo ${#FARBE}
thomas@dozent:~/bin$ echo ${FARBE#rot}
thomas@dozent:~/bin$ echo ${PROGRAM#*/}
thomas@dozent:~/bin$ echo ${FARBE%weis}
thomas@dozent:~/bin$ echo ${FARBE%o*}
thomas@dozent:~/bin$ echo ${FARBE/rot/blau}

Besondere Dateien

  1. Beschreiben sie die Funktion der folgenden Dateien
  • /etc/profile
  • ~/.bash_profile
  • ~/.bash_login
  • ~/.profile
  • ~/.bashrc
  • ~/.bash_history
  • ~/.bash_logout

Wichtige Systemvariablen

  1. Beschreiben sie folgende System-Variablen
  • PATH
  • HOME
  • BASH
  • PWD
  • OLDPWD
  • PS1 ,PS2 , PS3
  • UID
  • EDITOR
  • MAIL
  • HOSTNAME

Stellungsparameter (Spezielle Variablen)

  1. Welche Stellungsparameter gibt es
  2. Mit welchem Befehl setzt man sie
  3. Bilden sie einen Satz aus 9 Worten und probieren sie damit die Stellungsparameter aus
  4. Schreiben sie ein Skript das die Stellungsparameter ausgibt die man ihm übergibt

Systemparameter

  1. Welche Systemparameter gibt es und welche Funktion haben sie

shift-Kommando

  1. Wozu ist das shift-Kommando gut
  2. Experimentieren sie damit

read-Kommando

  1. Wozu ist das read-Kommando gut
  2. Schreiben sie ein Skript das sie nach ihrem Namen und Nachnamen fragt und ihn dann ausgibt

Einfache Verzweigungen

  1. Nennen und beschreiben sie die 2 Arten Einfacher Verzweigungen

Endestatus

  1. Was ist der Returncode
  2. Erzeugen sie beliebige Fehlermeldungen und lassen sie sich die Returncodes mit "echo $?" ausgeben

test-Kommando

  1. Was macht das test-Kommando
  2. Welche Schreibweisen gibt es

Numerischer Vergleich