Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| — | anwenderwiki:scripting:bashscripte [2013/10/18 20:07] (aktuell) – angelegt - Externe Bearbeitung 127.0.0.1 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | {{tag> bash scripting}} | ||
| + | ====== Einfache Shell Scripte ====== | ||
| + | |||
| + | Sihe auch -> [[http:// | ||
| + | |||
| + | Jedes selbstständige Shell-Script beginnt mit dem zugehörigen Interpreter in der ersten Zeile (nach den beiden shebang-Zeichen "# | ||
| + | |||
| + | #! /bin/sh | ||
| + | Shell-Scripte müssen per chmod auf ausführbar gesetzt sein. | ||
| + | ==== Variablen ==== | ||
| + | |||
| + | |||
| + | Variable zuweisen | ||
| + | text = " | ||
| + | Variable verwenden, in doppelten Anführungszeichen wird die Variable durch ihren Inhalt ersetzt. | ||
| + | echo " | ||
| + | Text ausdrucken, ohne die Variable zu ersetzen: | ||
| + | echo ' | ||
| + | Die Übergabeparameter an das Script sind in den folgenden Variablen abgelegt: | ||
| + | $1, $2, $3, ... | ||
| + | ==== Bedingte Anweisungen ==== | ||
| + | Grundstruktur: | ||
| + | if [Bedingung]; | ||
| + | < | ||
| + | else | ||
| + | < | ||
| + | fi | ||
| + | **Bedingungen: | ||
| + | [" | ||
| + | [" | ||
| + | [-f "/ | ||
| + | [-d "/ | ||
| + | [$Zaehler -le 10] # Bedingung für kleiner/ | ||
| + | # bei Zahlen folgende Vergleiche verwenden: -ne -eq -lt -gt -le -ge | ||
| + | |||
| + | if eval "ping -c1 10.16.1.1 > / | ||
| + | then | ||
| + | echo " | ||
| + | fi | ||
| + | UND ("&&" | ||
| + | |||
| + | if [ " | ||
| + | echo "User und Text sind richtig"; | ||
| + | fi | ||
| + | ==== Schleifen ==== | ||
| + | Beispiel, das die Buchstaben " | ||
| + | for z in a b c d e | ||
| + | do | ||
| + | echo $z | ||
| + | done | ||
| + | |||
| + | ==== Numerische Berechnungen ==== | ||
| + | |||
| + | anzahl=" | ||
| + | anzahl=$(( $anzahl-3+(30*5)/ | ||
| + | echo " | ||
| + | Die doppelten runden Klammern schließen einen Rechenausdruck ein. Es werden damit nur Berechnungen mit Integer-Zahlen ausgeführt.\\ | ||
| + | Weitere Möglichkeit: | ||
| + | |||
| + | a=6 | ||
| + | b=5.77 | ||
| + | e=`bc <<< | ||
| + | echo " | ||
| + | |||
| + | [[http:// | ||
| + | ==== Pipes, Verkettungen, | ||
| + | |||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||