LUG-Treffen 13.12.2006 Das große Linux-Weihnachts-Quiz =================================== von Alexander und Tobias 1. Frage {{{ Zu welchem Programm gehört folgende Beschreibung aus der Man-Page: [en] "do nothing, unsuccessfully" [de] "Nichts tun, erfolglos" {{{ Das Programm 'false' }}} }}} 2. Frage {{{ Welche der 3 folgenden Aufrufe zum Ändern der Gruppenrechte ist korrekt? 1) chgroup root /etc/passwd 2) chgroup /etc/passwd root 3) chgrp -c root /etc/passwd {{{ Der Aufruf 3) }}} }}} 3. Frage {{{ Warum darf man den USB Stick nicht ohne Aufruf von 'umount' vom Rechner abziehen? {{{ Da beim Speichern die Daten nicht direkt auf die Festplatte zurückgeschrieben werden, sondern im Cache verbleiben. Erst beim umount werden sie zurückgeschrieben. }}} }}} 4. Frage {{{ Wie kann man trotzdem das Zurückschreiben der Daten erzwingen? {{{ Durch Aufruf des Programms 'sync' }}} }}} 5. Frage {{{ Was gibt das folgende Kommando aus? eval `echo ghoatl | tr [\\\154,\\\164,\\\147] [i,m,w]` {{{ Den Login-Namen des aufrufenden Benutzers }}} }}} 6. Frage {{{ Was macht das Programm 'yes'? Es gibt Punkte für kreative Antworten! {{{ Es gibt so oft 'y' oder eine gegebene Zeichenkette aus bis es beendet wird. }}} }}} 7. Frage {{{ Was macht das Programm 'no'? Es gibt Punkte für kreative Antworten! {{{ Das Programm existiert auf einem Standard-Linux-System nicht }}} }}} 8. Frage {{{ Wie gibt man die Wörter einer Textdatei alphabetisch sortiert aus, wobei der Rest der jeweiligen Zeile (in der das Wort vorkommt) mit angezeigt werden soll. {{{ Man verwendet das Programm ptx dafür ;) }}} }}} 9. Frage {{{ Was bewirkt das folgende Kommando? cat > /tmp/tst.txt << A Das ist ein schöner Tag wegen dem kleinem C und dem großen A {{{ Es schreibt die beiden Zeilen in die Datei /tmp/tst.txt. }}} }}} 10. Frage {{{ Wie kann man sich den Inhalt einer Textdatei mit Zeilennummern versehen ausgeben lassen? {{{ Entweder mittels 'nl' oder 'cat -n' }}} }}} 11. Frage {{{ Wie kann man sich die Zahlen 1 bis 256 auf dem Bildschirm ausgeben lassen? {{{ Mit dem Kommando 'seq 1 256' }}} }}} 12. Frage {{{ Welches Programm verbirgt sich hinter '[' ? {{{ Das Programm 'test' }}} }}} 13. Frage {{{ Welches Fest feiern Linus Torvalds' Vorfahren heute? {{{ Lucia }}} }}} 14. Frage {{{ Wie muss die folgende Zeile verändert werden um die Ausgabe von stdout nach stderr umzuleiten? echo "darf nicht nacht stdout" | cat > /dev/geheim {{{ echo "darf nicht nacht stdout" >&2 | cat > /dev/geheim }}} }}} 15. Frage {{{ Was ist der Unterschied zwischen den folgenden beiden Anweisungen? rm /tmp/test.txt && rm /tmp/test2.txt rm /tmp/test.txt & rm /tmp/test2.txt {{{ Die erste Anweisung versucht /tmp/test.txt zu löschen und nur wenn dies erfolgreich war löscht es auch /tmp/test2.txt Die zweite Anweisung löscht /tmp/test.txt, verschiebt den Prozess in den Hintergrund und fängt sofort mit dem Löschen vin /tmp/test2.txt an }}} }}} 16. Frage {{{ Welche der folgenden Kommandos ist korrekt? 1) for i in 0 1 2 3 4 5 6 7 8 9 10; do echo $i done 2) for ((i = 0; i < 11; ++i)); do echo $i done 3) for i in `seq 0 10`; do echo $i; done 4) i="0 1 2 3 4 5 6 7 8 9 10" set $i for i; do echo $i done {{{ Unglaublich aber wahr, alle 4 Kommandos sind korrekt }}} }}} 17. Frage {{{ Welche 3 Möglichkeiten gibt es um in das Home- Verzeichnis zu wechseln? {{{ 1) cd 2) cd ~ 3) cd $HOME }}} }}} 18. Frage {{{ Wie kann man eine Datei löschen wenn man nur deren Inode-Nummer kennt? {{{ find -inum -exec rm {} \; }}} }}} 19. Frage {{{ In der Datei 'liste.txt' stehen die folgenden Dateinamen: /tmp/datei1 /tmp/datei2 /tmp/datei3 /tmp/datei4 /tmp/datei5 /tmp/remote/ Wie kann man die aufgelisteten Dateien (datei1 - datei5) nach /tmp/remote/ kopieren? {{{ cat liste.txt | xargs cp }}} }}} 20. Frage {{{ Was macht der folgende Befehl? pinky -piff {{{ Er zeigt die finger Informationen von localhost an, aber ohne den vollen Namen des Benutzers, der Kopfzeile und der Planinformation }}} }}} 21. Frage {{{ Wie kann man sich die Anzahl aller dem System bekannten Nutzer anzeigen lassen? {{{ wc -l /etc/passwd }}} }}} 22. Frage {{{ Wie kann man alle Vorkommen von Tabulatoren in der Textdatei 'daten.txt' durch jeweils 2 Leerzeichen ersetzen? {{{ expand -t 2 daten.txt }}} }}} 23. Frage {{{ Wie kann man die Zeilen der Textdatei 'daten.txt' nach 75 Zeichen umbrechen? {{{ fold -w 75 daten.txt }}} }}} 24. Frage {{{ Was bewirkt folgender Aufruf? bash -c 'set -f;g(){ read l&&(s=();for t in $l;do [[ $t<0 ]]&&s=($((${s[1]}$t$s)) ${s[@]:2})||s=($t ${s[@]});done;echo $s;g)};g' {{{ Let's test... ;) }}} }}} 25. Frage {{{ Welches koffeinhaltige Programm verwendet man zum duplizieren der Ausgabe eines Programms? {{{ Das Programm 'tee' }}} }}} 26. Frage {{{ Wie kann man die Zeit der Ausführung der beiden Befehle dd if=/dev/zero of=/dev/null bs=512 count=1000 echo "foo" in Sekunden messen? {{{ SECONDS=0 dd if=/dev/zero of=/dev/null bs=512 count=1000 echo "foo" echo $SECONDS }}} }}} 27. Frage {{{ Wie kann man die letzten 10 Befehle aus der Bash-History in einem Schritt erneut ausführen und gegebenenfalls noch nachbearbeiten? {{{ fc 490 500 }}} }}} 28. Frage {{{ Was bewirkt folgender Aufruf? `echo 'ls' | rev` {{{ Demo... }}} }}} 29. Frage {{{ Was bewirkt folgender Befehl? :() { :& :& }; : {{{ ... besser nicht auf einem Produktivsystem testen ... ;) }}} }}} // vim: foldmethod=marker