Sonntag, 13. Juli 2008
read
Der Befehl 'read' liest eine Zeile ein, die der Benutzer eingibt. Genauso kann er aber durch den Umleitungsoperator eine Datei einlesen. Der erste Parameter ist die Variable, in die eingelesen wird. Sie wird ohne vorangestelltes '$' angegeben, da sie ja initialisiert wird. Syntax:

read <Variable>

read <Variable> < <Datei>

Letzteres Beispiel liest eine Datei ein.

... link (0 Kommentare)   ... comment


Samstag, 12. Juli 2008
while und until
'while' und 'until' sind Gegenstücke. 'while' tut etwas so lange, wie es 'true' ist (es stimmt). 'until' tut es solange, bis es 'true' wird. Der Befehl 'do' kündigt hier den Befehlsblock an, 'done' beendet ihn. Syntax:

while [ <Bedingung> ]; do
<Befehle>
done

until [ <Bedingung> ]; do
<Befehle>
done

... link (0 Kommentare)   ... comment


if , elif und else
Sie werten die Rückgabe des Befehls '[' aus. Zuerst steht immer 'if'. Der Befehl 'then' kündigt den Befehlsblock an. Für weitere Fälle benutzt man 'elif' (zusammengesetzt aus 'else' und 'if'). Auch hier wird wieder 'then' benötigt. Als letztes folgt else. Dieser Befehl nimmt nichts entgegen. Er wird dafür benutzt, Etwas auszuführen, wenn kein Fall eintritt. Als letztes folgt 'fi'. Er beendet 'if'. Syntax:

if [ <Bedingung> ]; then
<Befehle>
elif [ <Bedingung> ]; then
<Befehle>
else
<Befehle>
fi

elif und else sind optional.

... link (0 Kommentare)   ... comment


Freitag, 11. Juli 2008
[ und test
Diese Befehle untersuchen den exit-Status eines Befehls. Das ist der Wert, mit dem sich ein Programm beendet. Das ist 0 für "Alles in Ordnung" oder jede andere Zahl für "Fehler!". [ erwartet als letzten Parameter ] so dass das ganze z.B. wie folgt aussieht: '[ "hallo" == "hallo" ]'. Nicht die Leerzeichen nach [ und vor ] vergessen! Es gibt einige Befehle, die das Ganze verändern:
-! am Anfang negiert die Anweisung. (Von true nach false und false nach true)
-== überprüft, ob String 1 gleich String 2 ist. Oft in Verbindung mit Variablen genutzt.
-&& (und) verbindet mehrere Bedingungen. Alle müssen true sein, damit das Ergebnis true ist.
-|| (oder) verbindet mehrere Bedingungen. Es darf nur eine true sein, damit das Ergebnis true ist.

... link (0 Kommentare)   ... comment


Shell Skripte programmieren
Shell Skripte zu schreiben ist sehr einfach: sie bestehen (fast) nur aus normalem Shell Code! Wichtig: In der ersten Zeile muss immer '#!/bin/bash' stehen, sonst kann das System die Datei nicht zuordnen! Für die Shell ist das nur ein Kommentar, da das erste Zeichen '#' ist. Darauf kann nun der Code folgen, und hier sieht man eine der Stärken des echo-Befehls: Kommunikation mit dem Benutzer! Nun muss das Skript nur noch ausführbar gemacht werden. Wechseln sie zuerst in das Verzeichnis ihres Skriptes. Nun rufen sie das Programm 'chmod' mit dem Parameter '+x', was für 'executable' (ausführbar) steht, auf. Als zweiten Parameter nehmen sie den Namen ihres Skriptes. Wechseln sie nun in ein anderes Verzeichnis. Sollte das Verzeichnis, in dem das Skript liegt, in ihrem Suchpfad sein, so können sie ihr Skript so ausführen: '. <name>'. Sie wollen den Punkt nicht schreiben müssen? Dann schreiben sie in die Datei '.bashsrc' in ihrem Home-Verzeichnis: 'alias <name>=". <name>"'. Und fertig!

... link (0 Kommentare)   ... comment


Ändern des Promts
Immer, wenn die Shell bereit ist, gibt sie den Promt aus. Das ist meist das Verzeichnis, in dem man sich befindet, gefolgt von einem > oder $. Wie aber diesen jetzt ändern? Ganz einfach: schreiben sie einfach PS1=<Promt> (ersetzen sie bitte <Promt> mit ihrem gewünschten Promt). Der neue Promt erscheint. Bei einem Neustart sind aber alle Änderungen verloren! Schreiben sie es einfach in die Datei, die beim Starten geöffnet wird: .bashsrc beim Öffnen eines neuen Shell-Fensters oder .user_profile beim Starten des Computers. Beide Dateien liegen in ihrem Home-Verzeichnis.

... link (0 Kommentare)   ... comment