Linux-Test

Texte mittels Filterprogrammen bearbeiten



Bei den folgenden Fragen geht es um den Umgang mit den GNU- bzw. Unix-Kommandos auf der Kommandozeile, mit deren Hilfe eine Filterung von Textdateien möglich ist. Sie können insbesondere testen, ob Sie in der Lage sind solche Filter auf Textströme (streams) anzuwenden.


  1. Welche der folgenden Kommandozeilen druckt die letzten 15 Zeilen einer Datei beispiel.txt aus?
    head --last 15 beispiel.txt
    head -n -15 beispiel.txt
    tail -15
    tail -n 15
    tac beispiel.txt | head -15 | tac

  2. Tac ist ein Kommando,
    welches das Kommandozeilen-Spiel tic-tac-toe startet.
    eine Datei in umgekehrter Reihenfolge der Zeilen ausgibt.
    eine Datei byteweise in umgekehrter Reihenfolge ausgibt.
    das zwei Dateien zusammenfügt ("tacked")

  3. Welche der folgenden Aufrufe druckt die ersten 42 Bytes einer Datei linux.txt aus?
    head 42 linux.txt
    head -c 42 linux.txt
    head --bytes 42 linux.txt
    head -c -42 linux.txt

  4. Welches Kommando spaltet eine Datei laenglich.log in mehrere Dateien von maximal 100 Zeilen Größe auf.
    cut -l 100 laenglich.log
    split -l 100 laenglich.log
    split -c 100 laenglich.log
    chop -l 100 laenglich.log

  5. Welches Kommando liefert die letzten 10 Zeilen einer Datei datei.txt?
    tail datei.txt
    tail -10 datei.txt
    last -10 datei.txt
    head -10 datei.txt

  6. Der Linux-Befehl "join datei1.txt datei2.txt"
    verknüpft die zwei Dateien nach dem Schlüsselfeld 1 (default)
    hängt die zweite Datei hinter die erste Datei
    hängt die erste Datei hinter die zweite Datei

  7. Welche der folgenden Kommandozeilen druckt eine Datei in Oktalformat aus?
    od -t o
    od -t x
    od -o
    od

  8. Welche der folgenden Kommandos liefert das Ergebnis "LINUX IST BESSER"
    echo "Linux ist besser" | tr a-z A-Z
    echo "Linux ist besser" | tr '[:lower:]' '[:upper:]'
    echo "Linux ist besser" | pr --upper
    echo "Linux ist besser" | wc -u

  9. Mit welchem Tool erreicht man, dass alle Tabulatoren einer Datei (oder der Standardeingabe) in Leerzeichen umgewandelt werden.
    notabs
    expand
    tabs
    tab2blank

  10. Welches Kommando reicht die Ausgabe an stdout weiter und speichert sie gleichzeitig in einer Datei
    | tee
    | tload
    | stdout -f
    | redirect -f
    | tee -f

  11. Welches Kommando filtert Nachname und Ort aus den Zeilen einer Datei "adressen.txt" heraus? Die Adressdaten sind zeilenweise in folgendem Format abgespeichert: "Vorname:Nachname:PLZ:Ort:Strasse"
    cut -b 9-16,21-25 adressen.txt
    cut -d: -f 2,4 adressen.txt
    awk 'BEGIN {FS=":"} {print $2":"$4}' adressen.txt
    sed "s/\(.*\):\(.*\):\(.*\):\(.*\):\(.*\)/\2 \4/" adressen.txt

  12. Welches Kommando liefert die Anzahl der Zeilen einer Datei?
    count
    lines
    wc
    nl
    clines

  13. Welches der folgenden Kommandos versucht Zeilen für eine vorgegebene maximale Länge möglichst gleich lang zu machen?
    expand
    fmt
    nl
    wc
    tr

  14. Welche der folgenden Kommandos kann man benutzen um sich jeweils eine Bildschirmseite Ausgabe anzuschauen?
    sed
    more
    print
    less
    grep

  15. Welches der folgenden Kommandos gibt die Kommentarzeilen eines Bash-Shellskriptes BeispielSkript aus?
    find "^#" BeispielSkript
    sed -n "/^#/p" BeispielSkript
    grep -v "^#" BeispielSkript
    locate "^#" BeispielSkript

  16. In einem Text beispiel.txt sollen jeweils 8 Leerzeichen zu einem TAB-Zeichen zusammengefasst werden. Welches der folgenden Kommandos leistet das?
    expand beispiel.txt
    tr -t 8 beispiel.txt
    tabs beispiel.txt
    unexpand beispiel.txt

  17. Mit welchem Befehl kann man die Anzahl der Zeichen einer Datei ermitteln?


  18. Welches der folgenden Kommandos sollte innerhalb einer Pipe dazu benutzt werden bestimmte Zeichen in andere Zeichen zu wandeln, z.B. alle Großbuchstaben in Kleinbuchstaben.
    awk
    grep
    tr
    pr
    nl

  19. Mit welche der folgenden Kommandos kann man den Inhalt einer Binärdatei in für menschen lesbarer Form ausgeben?
    dump
    hexdump
    od
    xd
    hd

  20. Mit welcher Option wird bei sort der Feldtrenner umdefiniert?
    -f
    -t
    -s
    -p

  21. Welches Programm dient der Nummerierung von Text-Dateien?
    nr
    wc
    nl
    ln

  22. Welche der folgenden Aussagen bzgl. des regulären Ausdrucks ^[^1-9a-z] ist wahr?
    Der Ausdruck liefert true, wenn der zu unterzuchende String oder die zu untersuchende Zeile nur aus Ziffern und Buchstaben besteht.
    Der Ausdruck liefert true, wenn der zu unterzuchende String oder die zu untersuchende Zeile nur aus Ziffern, allerdings ohne die 0 und aus Kleinbuchstaben besteht.
    Der Ausdruck liefert true, wenn der zu unterzuchende String oder die zu untersuchende Zeile nur aus der Ziffer 0 oder aus einem Großbuchstaben besteht.
    Der Ausdruck liefert true, wenn der zu unterzuchende String oder die zu untersuchende Zeile mit der Ziffer 0 oder einem Großbuchstaben beginnt.
    Der Ausdruck liefert true, wenn der zu unterzuchende String oder die zu untersuchende Zeile mit einer Ziffer, allerdings nicht die 0, oder einem Kleinbuchstaben beginnt.

  23. Wozu dient das Kommando "pr"?
    Mit diesem Komando werden Dateien auf dem Standarddrucker ausgegeben.
    Mit "pr" werden Dateien für Druckausgabe konvertiert.
    Es liefert eine Liste der momentan aktiven Prozesse
    Es gibt kein Kommando pr, sondern nur eine Umgebungsvariable PR, die das Ausgbeverhalten des Eingabepromptes festlegt.

  24. In einem Text beispiel.txt soll jedes TAB-Zeichen durch 4 Leerzeichen ersetzt werden. Welches der folgenden Kommandos leistet das?
    expand -t 4 beispiel.txt
    tr -t 4 beispiel.txt
    tabs -t 4 beispiel.txt
    unexpand -t 4 beispiel.txt

  25. Was bewirkt das Kommando "pr -l 20 -o 10 -h "Mein Header" Beispieldatei"?
    Die Datei "Beispieldatei" wird für die Druckausgabe aufbereitet: Mit der Überschrift "Mein Header", einem linken Offset von 10 Spalten und 20 Zeilen Inhalt pro Seite.
    Die Datei "Beispieldatei" wird mit den Optionen "Mein Header" als Titel, einem linken Offset von 10 Spalten und 20 Zeilen Inhalt pro Seite an den Standarddrucker geschickt.

  26. Man hat eine Datei der Form:

    Frank Meyer Radolfzell 07732/43452
    Peter Rabe Singen 07531/70021
    Ottmar Huber Rosenheim 08031/7877-0
    Anna Rabe Radolfzell 07732/2343
    Oskar Lindner Konstanz 07531/890
    Anna List München 089/3434544
    Franziska Huber Rosenheim 08031/787878
    Helge Rabe Konstanz 07531/343454


    Man möchte diese Datei nun so sortieren, dass zuerst nach dem Nachnamen und dann nach dem Vornamen sortiert wird. Welcher der folgenden Befehle leistet dies?
    sort -k2,2 -k1,1 adressen.txt
    sort -k2,1 adressen.txt
    sort +1 -2 +0 -1 adressen.txt
    sort +2 +1 adressen.txt

  27. Mit welchem Befehl kann man (unter anderem) die Anzahl der Zeilen einer Datei ermitteln?


  28. Mit welcher Option kann man eine Datei mittels des sort-Befehls numerisch sortieren?
    -g
    -n
    -z
    -d

  29. Jemand möchte eine Datei mit dem sort-Befehl in umgekehrter alphabetischer Reihenfolge sortieren. Welche der folgenden Optionen leisten dies?
    -fr
    -ir
    -Ri
    -bi

  30. Mit welchem Befehl kann man eine Textdatei auf eine Zeilenlänge von maximal 60 Zeichen formatieren, wobei Trennungen nur zwischen Wörten, also bei Leerzeichen, und nicht nach einem Punkt erfolgen.
    fmt -w 60
    fold -w 60
    format -w 60

  31. Worin unterscheidet sich das Kommando fold von dem Kommando fmt?
    Sie unterscheiden sich nicht, denn fmt ist nur eine veraltete Version von fold.
    fold trennt Zeilen defaultmäßig nach 80 Zeichen. Gegebenenfalls werden Wörter dadruch zerhackt.
    fold umbricht Zeilen, wenn sie länger als 80 Zeichen sind, füllt aber Zeilen nicht mit den Folgezeilen auf, wie dies bei fmt geschieht
    tmt umbricht Zeilen, wenn sie länger als 80 Zeichen sind, füllt aber Zeilen nicht mit den Folgezeilen auf, wie dies fold macht.

  32. Welche der folgenden Kommandos sortiert eine Datei und gibt mehrfach vorkommende Zeilen nur einmal aus.
    sort -n test.txt | uniq -d
    uniq test.txt
    sort -n test.txt | uniq
    sort -n test.txt | uniq -u
    sort -u test.txt

  33. Man hat ein Preisliste "Preisliste" in einem simplen Format, d.h. pro Zeile jeweils eine Produktnummer und ein Preis, getrennt durch ein Leerzeichen oder Tab, z.B. 32344 326.87
    32348 123.99
    54589 989.00
    Welche der folgenden Bash-Kommandofolgen sortiert eine Datei "Preisliste" numerisch absteigend, nummeriert diese Liste und spaltet sie anschließend in kleine Dateien (Liste01, Liste02, Liste03, usw.) mit höchstens jeweils 25 Zeilen auf?
    sort -k 2 -n Preisliste | nl | split -25 -
    sort -k 2 -n Preisliste | nl | cut -25 -
    sort -k 2 -nr Preisliste | nl | tee liste | split -25 -d liste Liste
    sort -k 2 -nr Preisliste | nl | split -25 -d - Liste
    sort -k 2 -nr Preisliste | nl > split -25 -
    sort -k 2 -nr Preisliste | nl | tee liste ; split -25 -d liste Liste

Übersicht:

© James Wilson - Fotolia.com

© Bild: James Wilson

Bei Fragen mit Vierecken zum Ankreuzen können eine oder mehrere Alternativen korrekt sein.

Bei den Fragen mit Kreisen zum Ankreuzen ist immer nur eine Alternative möglich!


Wenn Sie schnell und effizient Linux oder eine Programmiersprache wie C/C++, Python, PHP oder Perl erlernen wollen, finden Sie sicherlich einen passenden Kurs bei Bodenseo. Die Kurse und Schulungen finden am Bodensee statt, einer der schönsten Regionen von Deutschland.

© Bernd Klein, Bodenseo, Linux-Kurse und Schulungen