Also hier sind alle Beispiele die wir gemacht haben oder ich gemacht habe ;)

Zuerst die Beispielprüfung!!
1. Multiple Choice Fragen:
1) Die Ausgabe eine Befehls wird umgeleitet in eine Variable mit:
(R) (F) VAR='befehl'
(R) (F) befehl=VAR
(R) (F) VAR=befehl
2) Der symbolische Berechtigungsmodus rw-rw-r-- einer Datei entspricht:
(R) (F) 664
(R) (F) 744
(R) (F) 611
3) Mit welchem Befehl wechselt man das Verzeichnis:
(R) (F) pwd
(R) (F) cd
(R) (F) cc
4) Unix Shells sind
(R) (F) csh
(R) (F) wsh
(R) (F) cmd.exe
5) Userinformationen kann man abfragen mittels:
(R) (F) hand
(R) (F) finger
(R) (F) whoami
6) Die ls-Option für das Anzeigen versteckter Dateien lautet:
(R) (F) -l
(R) (F) -h
(R) (F) -a
7) Der symbolische Berechtigungsmodus rwxr-xr-x einer Datei entspricht:
(R) (F) 755
(R) (F) 733
(R) (F) 633
8) Wie kann man den Typ der Datei filename herausfinden:
(R) (F) help filename
(R) (F) man filename
(R) (F) file filename
9) Die X Window System Implementation unter Linux heißt:
(R) (F) X win
(R) (F) XFree86
(R) (F) X
10) Die Konfigurationsdatei des Linux Loaders ist:
(R) (F) /etc/lilo.conf
(R) (F) /etc/linux
(R) (F) /boot/vmlinuz
11) Der Wert einer Variable wir ausgegeben mit:
(R) (F) echo $VAR
(R) (F) cat $VAR
(R) (F) echo VAR
12) Der Wildcard Charakter * steht für:
(R) (F) beliebig viele Zeichen
(R) (F) genau ein Zeichen
(R) (F) mindestens drei Zeichen
13) Das Verzeichnis /sbin enthält:
(R) (F) Kernel
(R) (F) Homeverzeichnisse
(R) (F) Manpages
14) vi ist ein:
(R) (F) Editor
(R) (F) Newsreader
(R) (F) Grafikprogramm
15) Zum Ändern des Gruppenbesitzers einer Datei kann man verwenden:
(R) (F) chmod
(R) (F) chown
(R) (F) chgrp


2. Praktische Fragen
1) Erstellen Sie einen Alias für mv, sodaß rückgefragt wird, ob die Datei wirklich bewegt werden soll.
alias mv='mv -i' oder alias mv="mv -i" (für Variablen benutz ich "")

2) Wie lautet Ihre aktuelle Umask?
umask

3) Erstellen Sie eine Datei recht. Ändern Sie ihre Rechte auf 006. Wer darf die Datei nun lesen/schreiben/auführen?
touch recht
chmod 006 recht
alle User können schreiben und lesen

4) Wie viele Dateien in /usr/lib (ohne Unterverzeichnisse) haben ein l im Namen?
find /usr/lib -maxdepth 1 -name "*l*" | wc -l

5) Packen Sie alle Dateien und Verzeichnisse in /etc in einen Tarball etc.tar.gz. Wie groß ist der Tarball?
tar -cvf etc.tar /etc/*
ls -l Größe ablesen (in dem Fall wars 53401600 Bytes groß)

6) Erzeuge eine Textdatei mit dem Inhalt "test". Wie groß ist die Datei? Welche Berechtigungen hat sie?
vi test.txt
Text in das Dokument einfügen
- die Datei ist 5 Bytes groß & die Berechtigung ist auf 664 gesetzt.

7) Welche Zeilennummer hat die letzte Zeile in /usr/include/stdio.h, in der das Wort stream vorkommt?
grep -n stream /usr/include/stdio.h

8) Sortieren Sie die Zeilen in /etc/services. Wie lautet die letze Zeile vor/nach der Sortierung?
tail -n 1 /etc/services
sort /etc/services --> letzte Zeile ablesen
(oder ganz umständlich.... sort /etc/services > babsi.txt ; und dann tail -n 1 babsi.txt dann kann mans auch lesen..)

9) Gib alle Zeilen in /etc/hosts aus, die nicht `10.10`enthalten.

cat /etc/hosts | grep -v "10.10" zeigt alle Dateien ohne 10.10 an

10) Wo in /etc befindet sich die Datei ifcfg-eth0?
find /etc -name "ifcfg-eth0"

3. Langfragen
1) Was versteht man unter einer Pipe? Erklären Sie | und geben Sie ein sinnvolles Beispiel.
Eine Aneinanderreihung von Kommandos.
ls -l | grep a

2) Welche Dateitypen gibt es in einem Linux System?
gewöhnliche Daten, Gerätedaten, Directories

3) Wie kann man feststellen wie viele harte Links auf eine Datei zeigen? Wann wird der Inhalt einer Datei von der Festplatte gelöscht, wenn mehrere harte Links darauf zeigen?
ls
Der Inhalt wird gelöscht wenn der letzte Link gelöscht wird.

4) Was ist GNU?
GNU= not Linux

5)Was sind Shell Variablen, wozu dienen sie, wie setzt man sie und wie liest man sie aus?
Eine Shell Variable ist ein Platzhalter
man setzt sie mit: NAME=Wert und ausgeben: $NAME

6) Welche Hardwareanforderungen stellt das Installationsprogramm der Linuxdistribution die Sie verwenden? Würde Linux auch mit weniger auskommen?
ein 486er Pc würde reichen

7) Was ist ein Link? Welche Arten kennen Sie?
Ein Link ist ein Verweis; symbolischer und harter Link

8) Welche Arten kennen Sie, Befehle in der Shell zu gruppieren? Erklären Sie die Unterschiede.
; und () die Unterschiede kann ich nicht erklären

9) Welche Möglichkeiten bietet Linux zur Zusammenarbeit mit anderen Betriebssystemen? (z.B.: DOS, Win)
Netzwerk, Samba, Windows Anwendungen auf Linux laufen zu bringen .....? was das heißt weiß ich nicht :)

10) Welche Wildcards kennen Sie und was bedeuten diese?
* ? *bedeutet beliebig viele Zeichen und ? bedeutet genau ein beliebiges Zeichen

Und jetzt die Fragen die wir in der 7ten VO gemacht haben (36 Beispiele)!!
1.) Wer ist gerade am (lokalen!) System eingeloggt?
who oder w zeigen an wer eingeloggt ist. w zeigt mehr Information an als who

2.) In welchem Verzeichnis befinden sie sich gerade?
pwd ... print working directory .... oder echo $PWD

3.) Wie viele Dateien - auch versteckte - sind im aktuellen Arbeitsverzeichnis?
ls -a oder ls -a | wc -l <-- zählt die Dateien ab

4.) Wie viele Dateien befinden sich in /usr/lib?
ls -a /usr/lib | wc -l

5.) Wie viele Dateien (keine Verzeichnisse!), die mit t beginnen, befinden sich im Verzeichnis /usr/lib und seinen Unterverzeichnissen?
find /usr/lib -name "t*" | wc -l

6.) Wie viele Dateien/Verzeichnisse in /usr/include (ohne Unterverzeichnisse!) haben ein x im Dateinamen?
find /usr/include -maxdepth 1 -name "*x*" | wc -l

7.) Wie viele versteckte Dateien, die mit t beginnen, gibt es in deinem Homedirectory?
find ~/ -name ".t*"

8.) Gibt es in / Verzeichnisse, die Sie als normaler User nicht lesen dürfen? Wenn ja, welche?
ls -l / oder ls -l / | grep d ??????-??

9.) Welche Rechte hat /etc/securetty? Dürfen Sie diese Datei als normaler Benutzer ansehen?
ls -l /etc/securetty man soll auf das 'r' schauen bei der letzten 3-er Gruppe (also: ------r--)

10.) Wie viele Dateien, die mit s beginnen, gibt es im Suchpfad (PATH)?
ls /bin/ | grep "^s:" das ^steht für den Zeilenanfang, wir gehen davon aus das bin sich im Path befindet
ls /bin/ | grep "^s:" | wc -l zählt die Dateien noch zusätzlich

11.) Welches ist das größte Unterverzeichnis in /var/spool?
du -sh /var/spool/* s steht für sumarize, h für human readable und der * heisst das auch in den Unterverzeichnissen gesucht wird

12.) Erzeuge eine Textdatei mit dem Inhalt "parxis". Wie groß ist die Datei? Welche Berechtigung hat sie?
echo "praxis" > text.txt
ls -l text.txt
sieht ist 7 Bytes groß und die Berechtigung ist auf 644 gestellt.

13.) Um welchen Dateityp handelt es sich bei /etc/host.conf? Notieren Sie den Inhalt der Datei.
file /etc/host.config ist ein ASCII text

14.) Erstellen Sie ein Datei data. Erstellen Sie weiters einen symbolischen Link data.link, der auf data zeigt und löschen Sie danach data. Läßt sich der Inhalt von data.link anzeigen?
touch data
ln -s data data.link data= Quelle , data.link= Ziel
rm data
cat data.link --> läßt sich nicht mehr anzeigen!

15.) Wie viele Wörter, Zeilen bzw. Zeichen hat die Datei /etc/services?

wc wordcount; wc -l-w-c l=Zeile, w= Wöter und c= Zeichen
wc /etc/services erste Zahl sind die Zeilen, 2te die Wörter und 3te die Zeichen

16.) Erstellen Sie eine Datei verzeichnis mit dem Namen des aktuellen Verzeichnisses als Inhalt ohne einen Editor zu benutzen.
echo $PWD > verzeichnis
cat verzeichnis
oder pwd > verzeichnis

17.) Welche Zeilennummer hat die letzte Zeile in /usr/include/string.h, in der das Wort restrict vorkommt?
cat /usr/include/string.h
nl erstellt Zeilennummern
oder grep -n restrict /usr/include/string.h

18.) Erstellen Sie eine Datei recht. Ändern Sie ihre Rechte auf 040. Wer darf die Datei nun lesen/schreiben/ausführen?
touch recht
chmod 040 nur die Gruppe darf jetzt lesen

19.) Finden Sie die Version der bash heraus!
bash -version

20.) Wer besitzt die Datei /etc/passwd?

ls -l /etc/passwd root besitzt die Datei

21.) Wie lautet ihre aktuelle Umask?
umask

22.) Wo im Pfad befindet sich das Kommando basename?
which basename sucht nur im Pfad
oder whereis basename sucht in den gängigen Verzeichnissen

23.) Wo in /usr/include befindet sich die Datei job.h?
find /usr/include/ - name job.h

24.) Welchen Wert hält die Variable PWD?
echo $PWD das aktuelle Verzeichnis

25.) Setzen Sie die Variable F00 auf den Wert bar. Geben Sie ihren Wert aus und löschen Sie die Variable wieder.
F00=bar
echo $F00
[löschen tu ich Variablen mit unset F00 oder F00=

26.) Erzeugen Sie mit einer Schleife 3 Dateien bild [4-6].txt!
for i in `seq 4 6`;
do
touch bild ${i}.txt die {}müssen nur bei Doppeldeutigkeiten verwendet werden
done

27.) Erstellen Sie einen Alias für cp, so dass rückgefragt wird, ob die Datei wirklich kopiert werden soll (Hinweis: man cp!)
alias cp="cp -i" zum rückgängig machen: alias cp="cp"

28.) Listen Sie alle am System laufenden Prozesse auf. Wie lange läuft die Shell schon?
ps aux | grep bash

29.) Finden Sie heraus, unter welchem User portmap läuft!
ps aux | grep portmap portmap läuft unter einem dämon

30.) Kopieren Sie die Datei /usr/include/unistd.h in ihr Homeverzeichnis. Packen Sie die Datei mit gzip und notieren Sie die Größe vor/nach dem Komprimieren.
cp /usr/include/unistd.h ~
gzip unistd.h
cp /usr/include/unistd.h ~
ls -l unistd.h*

31.)Erstellen Sie ein tar-Archiv, das aus /usr/include die Dateien stdio.h, unistd.h und stdlib.h enthält. Wie groß sind die einzelnen Dateien, wie groß ist das Archiv?
tar -cvf archiv.tar /usr/include/stdio.h /usr/include/unistd.h /usr/include/stdlib.h
oder tar -cvf archiv.tar /usr/include/{stdio.h, unistd.h, stdlib.h}
ls -l

32.) Lassen Sie sich (mittels cut) aus /etc/passwd nur die Benutzernamen und deren UID (3.Feld) ausgeben!
cat /etc/passwd | cut -d: -f1,3 -d = Trennzeichen, -f= field Passwort ist auf Field 1

33.) Kopieren Sie /etc/protocols in ihr Homedirectory und entfernen Sie mittels geeigneter Kommandoverknüpfung die Kommentare aus dieser Datei. (Achtung: Das Zeichen # muss in der Shell gequotet werden!)
cp /etc/protocols . .= bin im Homedirectory
cat protocols | cut -d "#" -f1

34.) Gib alle Zeichen in /etc/issue aus, die nicht 'Red Hat' enthalten.
cat /etc/issue
cat protocols | grep -v pim -v= alles was nicht getroffen wird, wird angezeigt

35.) Lassen Sie sich nur die letzte Zeile von /etc/man.config anzeigen.
tail -n1 /etc/man.config

36.) Lassen Sie sich nur die erste Zeile von /etc/resolv.conf anzeigen.
head -n1 /etc/man.config