Gewichtung | 4 |
Beschreibung | Kandidaten sollten in der Lage sein, existierende Skripte anzupassen oder einfache neue Bash-Skripte zu schreiben. |
Hauptwissensgebiete:
- Standard-`sh`-Syntax verwenden (Schleifen, Fallunterscheidungen).
- Kommandosubstitution verwenden.
- Rückgabewerte auf Erfolg, Misserfolg oder andere von einem Programm gelieferte Informationen prüfen.
- Bedingt Mail an den Systemadministrator schicken.
- Den richtigen Skript-Interpreter über die Shebang-Zeile (`#!`) wählen.
- Den Ort, die Eigentümerschaft, die Ausführungs- und SUID-Rechte von Skripten verwalten.
Hier ist eine auszugsweise Liste der verwendeten Dateien, Begriffe und Hilfsprogramme:
- for
- while
- test
- if
- read
- seq
- exec
for while test if read seq
for i in *.jpg;do command1 command2;done for (( expr1; expr2; expr3 )) do command1 command2;done i=1; for day in Mon Tue Wed Thu Fri;do echo "Weekday $((i++)) : $day";done # for day in Mon, Tue, Wed, Thu, Fri # for day in "Mon Tue Wed Thu Fri" i=1; for file in /etc/[abcd]*.conf;do echo "File $((i++)) : $file";done for (( i=1; i <= 5; i++ ));do echo "Random number $i: $RANDOM";done i=1;for (( ; ; ));do sleep $i;echo "Number: $((i++))";done
http://bash.cyberciti.biz/guide/For_loop
#!/bin/bash # A simple shell script to run commands for command in date pwd df</pre> for while test if read seq <pre> for i in *.jpg;do command1 command2;done for (( expr1; expr2; expr3 )) do command1 command2;done i=1; for day in Mon Tue Wed Thu Fri;do echo "Weekday $((i++)) : $day";done # for day in Mon, Tue, Wed, Thu, Fri # for day in "Mon Tue Wed Thu Fri" i=1; for file in /etc/[abcd]*.conf;do echo "File $((i++)) : $file";done for (( i=1; i <= 5; i++ ));do echo "Random number $i: $RANDOM";done i=1;for (( ; ; ));do sleep $i;echo "Number: $((i++))";done
http://bash.cyberciti.biz/guide/For_loop
#!/bin/bash # A simple shell script to run commands for command in date pwd df do echo echo "*** The output of $command command >" #run command $command echo done