Wie viele Dateien - auch versteckte - sind im aktuellen Arbeitsverzeichnis?
ls –a | wc –l
find . –type f | wc – l
find . –maxdepth 1 –type f | wc – l (aktuelles Verzeichnis)
find ~ –maxdepth 1 –type d | wc - l (vollen Pfad)
ls – al | grep ^- | wc – l (die mit Strich beginnen)
Wie viele Dateien befinden sich in /usr/lib?
find /usr/lib/ -maxdepth 1 –type f | wc – l
Wie viele Dateien (keine Verzeichnisse!), die mit t beginnen, befinden sich im Verzeichnis /usr/lib und seinen Unterverzeichnissen?
find /usr/lib/ -maxdepth 1 –type f –name “t*“ | wc – l
Wie viele Dateien/Verzeichnisse in /usr/include (ohne Unterverzeichnisse!) haben ein x im Dateinamen?
find /usr/include/ -maxdepth 1 –type f –name “*x*“ | wc – l (f beduetet reguläres File :Datei)
find /usr/include/ -maxdepth 1 –type d –name “*x*“ | wc – l (d beduetet Verzeichnis)
Wie viele versteckte Dateien, die mit t beginnen, gibt es in deinem Homeverzeichnis?
ls – a (im ~ )
ls – a | grep `\.t` | wc – l (Hochkomma)
ls – a .t* -d
find –maxdepth 1 (ohne –type d) –name “.t*“ | wc –l
Gibt es in / Verzeichnisse, die Sie als normaler User nicht lesen dürfen? Wenn ja, welche?
Welche Rechte hat /etc/securetty? Dürfen Sie diese Datei als normaler Benutzer ansehen?
Wie viele Dateien, die mit s beginnen, gibt es im Suchpfad (PATH)?
S <Tab><Tab> drücken und possibilities
Echo $PATH
Welches ist das größte Unterverzeichnis in /var/spool?
ls –l /var/spool
du –sh /var/spool/* 2>/dev/null (um Fehlermeldungen zu vermeiden) ( du: disk usage)
Erzeuge eine Textdatei mit dem Inhalt ”praxis”. Wie groß ist die Datei? Welche Berechtigungen hat sie?
echo “praxis“ > praxis.txt
ls –l praxis.txt
vierte Spalte ist die Größe
Um welchen Dateityp handelt es sich bei /etc/host.conf? Notiere den Inhalt der Datei.
ls –l /etc/host.conf
cat /etc/host.config (um zu sehen was drinnen steht)
Erstelle eine Datei data. Erstelle weiters einen symbolischen Link data.link, der auf data zeigt und lösche danach data. Lässt sich der Inhalt von data.link anzeigen?
touch data
ln –s data data.link (Symb.Link)
rm data
cat data.link
ls –l
Wie viele Wörter, Zeilen bzw. Zeichen hat die Datei /etc/services?
wc /etc/services
-l (Zeilen)
-w (Wörter)
-c (Zeichen)
erster Wert:
zweiter Wert:
dritter Wert:
Erstelle eine Datei verzeichnis mit dem Namen des aktuellen Verzeichnisses als Inhalt ohne einen Editor zu benutzen.
pwd ( aktulelles Verzeichnis)
pwd > verzeichnis
ls
cat verzeichnis
Welche Zeilennummer hat die letzte Zeile in /usr/include/string.h, in der das Wort restrict vorkommt?
grep –n restrict /usr/include/string.h (letzte Anzahl ist die Antwort)
oder mit vi nach restrict suchen
Erstelle eine Datei recht. Ändere ihre Rechte auf 040. Wer darf die Datei nun lesen/schreiben/ausführen?
touch recht
chmod 040 recht
ls –l
cat recht
Finde die Version der bash heraus!
Wer besitzt die Datei /etc/passwd?
Wie lautet Ihre aktuelle Umask?
umask → 022 → abgezogen von 666
Wo im Pfad befindet sich das Kommando basename?
which basename (usr/bin/basename)
whereis
Wo in /usr/include befindet sich die Datei job.h?
find /usr/include/ -name job.h
Welchen Wert hat die Variable PWD?
Setzen Sie die Variable FOO auf den Wert bar. Geben Sie ihren Wert aus und löschen Sie die Variable wieder.
FOO=bar (ohne Abstand)
echo $FOO ( bar )
unset FOO (Variable löschen)
echo $FOO (nicht gesetzte Variable Inhalt ist leer)
Erzeugen Sie mit einer Schleife 3 Dateien bild[4-6].txt!
for i in ’seq 4 6’ ; do
touch bild$i.txt
done
(entstandene Dateien 4,5,6. Variablenname bild{i}.txt )
Erstellee einen Alias für cp, sodass rückgefragt wird, ob die Datei wirklich kopiert werden soll (Hinweis: man cp!)
man cp
cp bild4.txt bild5.txt
alias
echo $PATH
alias cp=`cp -i’ ( i bedeutet Rückfrage vor dem Schreiben)
cp bild4.txt bild5.txt
which cp
/bin/cp bild4.txt bild5.txt
cp -f
Liste alle am System laufenden Prozesse auf. Wie lange läuft ihre Shell schon?
ps aux (alle laufende Prozesse)
ps aux | grep bash
Finde heraus, unter welchem User portmap läuft!
Kopiere die Datei /usr/include/unistd.h in ihr Homeverzeichnis. Packe die Datei mit gzip und notiere die Größe vor/nach dem Komprimieren.
cp /usr/include/uninstd.h ~
ls –l
gzip unistd.h
ls –l
Erstelle 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?
ls –l /usr/include/{ stdio, uninstd, stdio}.h
tar -cvf archiv.tar /usr/include/{ stdio, uninstd, stdio }.h
(…)
ls –l (archiv.tar)
Gib (mittels cut) aus /etc/passwd nur die Benutzernamen und deren UID (3. Feld) aus!
cat /etc/passwd
cat –d: -f2,f4 /etc/passwd (d:Kennzeichen zw.Felder; f2 bis f4 : Felder )
Kopiere /etc/protocols in ihr Homedirectory und entferne mittels geeigneter Kommandoverknüpfung die Kommentare aus dieser Datei. (Achtung: Das Zeichen # muß in der Shell gequotet werden!)
cp /etc/protocols ~
cut –d’#’ –f1 protocols ( manchmal auch ohne Hochkomma)
man grep ( invert match)
grep –v fc protocols (fix command
Zeige nur die erste Zeile von /etc/resolv.conf an!
head – nl /etc/resolve.config
head -1 /etc/resolv.config
Zeige nur die letzte Zeile von /etc/man.config an
tail –nl /etc/manpath.config