Shellprogrammierung
Informatik, 4. Semester
Informatik, 4. Semester
Kartei Details
Karten | 68 |
---|---|
Sprache | Deutsch |
Kategorie | Informatik |
Stufe | Universität |
Erstellt / Aktualisiert | 23.03.2017 / 18.07.2021 |
Weblink |
https://card2brain.ch/box/20170323_shellprogrammierung_qLMT
|
Einbinden |
<iframe src="https://card2brain.ch/box/20170323_shellprogrammierung_qLMT/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Was bedeutet es, wenn ein Befehl einen Exit-Status 0 zurückgibt?
kein Fehler
In welcher Variable wird der Exit-Status des zuletzt ausgeführten Befehls gespeichert?
$?
Nennen Sie zwei Möglichkeiten, um sich (fast) immer Hilfe zu einem Befehl anzeigen zu lassen?
- <Programm/Kommando> --help bzw. help <Programm/Kommando>
- man <Programm/Kommando>
Was sind die Unterschiede zwischen den folgenden drei Befehlen?
(a) echo hallo $(whoami), du bist in $SHELL
(b) echo "hallo $(whoami), du bist in $SHELL"
(c) echo 'hallo $(whoami), du bist in $SHELL'
(a) keine Anführungszeichen: Leerzeichen werden ignoriert; $(whoami) und $SHELL werden ausgewertet und geben den Benutzernamen bzw. die aktuell genutzte Shell zurück
(b) doppelte Anführungszeichen (double quotes): Leerzeichen werden berücksichtigt; $(whoami) und $SHELL werden ausgewertet und geben den Benutzernamen bzw. die aktuell genutzte Shell zurück
(c) einfache Anführungszeichen (single quotes): Leerzeichen werden berücksichtigt; $(whoami) und $SHELL werden NICHT ausgewertet
Nennen Sie zwei Aufagben, die sich mit sed erledigen lassen?
- Text ersetzen: sed 's/Original/Neu/' eingabedatei
- Zeilen löschen: sed '/Ausdruck/d' eingabedatei
- Zeilen hinzufügen nach Adresse: sed 'Adresse a\neue Zeile' eingabedatei
- Zeilen hinzufügen nach Ausdruck: sed '/Ausdruck/ a\neue Zeile' eingabedatei
Was können Sie mit dem Tool grep erreichen?
grep sucht Zeichenketten anhand von regulären Ausdrücken und gibt Treffer zurück.
Nennen Sie jeweils ein Tool, mit dem sich folgende Aufgaben erledigen lassen?
(a) Zeichenketten anhand eines Trennzeichens auftrennen
(b) Zeilen sortieren
(c) Statistiken über Zeilen/Wörter/Zeichen ausgeben
(a) cut
(b) sort
(c) wc
Eingabe: grep '#!/bin/bash' scripter.sh
Ausgabe:
#!/bin/bash
echo '#!/bin/bash' > $script
(a) Was passiert hier?
(b) Wie können Sie erreichen, dass nur die erste Zeile ausgegeben wird?
(a) Es wird in der Datei "scripter.sh" nach der Zeichenkette "#!/bin/bash" gesucht und die Zeilen, die diese Zeichenkette enthalten, ausgegeben.
(b) grep '#!/bin/bash' scripter.sh | head -1
Wie können Sie einen Befehl im Hintergrund ablaufen lassen?
"&" an Befehl anhängen
Wie können Sie sich alle im Hintergrund laufenden / pausierten Befehle anzeigen lassen?
jobs
Wie holen Sie einen im Hintergrund laufenden Befehl wieder in den Vordergrund?
fg
Wie bringen Sie einen im Vordergrund laufenden Befehl (pausiert) in den Hintergrund?
STRG+Z
Wie können Sie einen im Hintergrund pausierten Befehl wieder starten?
bg
Nennen Sie drei Befehle, mit denen Sie in Ihr Heimatverzeichnis welchseln können.
- cd
- cd ~
- cd $HOME
Welche Bedeutung haben folgende Variablen der Shell?
- $#
- $1
- $0
- $?
- Anzahl aller übergebenen Parameter
- erster übergebener Parameter
- Dateinamen des aufgerufenen Skripts
- Rückgabewert des zuletzt aufgerufenen Befehls (exit-Status)
Mit welcher Tastenkombination kann ein im Vordergrund laufendes Programm abgebrochen werden, so dass es beendet wird?
STRG+C
Mit welchem Befehl können Sie einen Prozess beenden?
kill
"Nicht benötigte Ausgaben lassen sich am besten auf das Gerät /dev/nil umleiten." Wahr oder falsch?
Falsch, /dev/null.
"Das Heimatverzeichnis jedes User liegt auf jedem Unix-artigen System immer unter /home". Wahr oder falsch?
Wahr.
"Dateien unter Unix-artigen Systemen lassen sich anhand der Eigenschaften static/dynamic uns sharable/unsharable kategorisieren." Wahr oder falsch?
Falsch, static/variable.
"Der Rückgabewert eines Befehls ist immer 0, wenn dieser erfolgreich ausgeführt wurde." Wahr oder falsch?
Wahr.
Wie können Sie sich alle definierten Aliasse anzeigen lassen?
alias
Worauf prüft folgender Befehl: "[-f datei1.txt -a -e datei2.txt]"?
- -f: prüft, ob datei1.txt existiert und eine reguläre Datei ist
- -e: prüft, ob datei2.txt existiert
- -a: wahr, wenn beide Bedingungen zutreffen
Worauf prüft folgender Befehl: "[$number -gt 0 -a $number -lt 11]"?
- -gt: prüft, ob $number größer 0 ist
- -lt: prüft, ob $number kleiner 11 ist
- -a: wahr, wenn beide Bedingungen zutreffen
Welche Bedeutung hat die Variable $PATH
Umgebungsvariable, die die Liste der Suchpfade enthält
Wie ließe sich die Auswertung der Magic Line umgehen?
- direkt den Interpreter mit Script als Parameter starten
- . <script>, was dasselbe ist wie source <script>
Wie kann ein Befehl abhängig vom Exit-Status 0 eines vorhergehenden Befehls direkt ausgeführt werden (also ohne if)?
Befehl1 && Befehl2
Wie kann ein Befehl abhängig von einem Exit-Status eines vorhergehenden Befehls, der ungleich 0 ist, direkt ausgeführt werden (also ohne if)?
Befehl1 || Befehl2