Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
A Musterlösungen 235<br />
9.7 Sie sollten mit »whereis« zwei Dateien namens /usr/share/man/man1/crontab.1.<br />
gz und /usr/share/man/man5/crontab.5.gz finden. <strong>Die</strong> erstere enthält die Dokumentation<br />
für das eigentliche crontab-Kommando, die letztere die Dokumentation für<br />
das Dateiformat, das Sie mit crontab anlegen können. (<strong>Die</strong> Details sind für diese<br />
Aufgabe nicht wichtig; siehe <strong>Linux</strong>-Administration I.)<br />
9.8 <strong>Die</strong> Bash verwendet Zeichenfolgen der Form »!⟨Zeichen⟩« zum Zugriff auf<br />
alte Kommandos (eine Alternative zu den Tastaturfunktionen wie Strg + r , die<br />
sich aus der C-Shell in die Bash hinübergerettet hat). <strong>Die</strong> Zeichenfolge »!"« hat<br />
aber keine Funktion, sondern gilt als Syntaxfehler.<br />
9.9 Keiner.<br />
9.10 Wenn der Dateiname als Parameter übergeben wird, fühlt wc sich bemüßigt,<br />
ihn mit der Zeilenzahl auszugeben. Wenn wc von der Standardeingabe liest, gibt<br />
es nur die reine Zeilenzahl aus.<br />
9.11 Versuchen Sie etwas wie<br />
#!/bin/bash<br />
pattern=$1<br />
shift<br />
✁✁✁✁✁<br />
for f<br />
do<br />
done<br />
grep $pattern "$f" && cp "$f" backup<br />
Nach dem shift ist das Suchmuster nicht mehr der erste Parameter, und das wirkt<br />
sich auch auf »for f« aus.<br />
9.12 Der -f-Dateitest bezieht sich, wenn er auf ein symbolisches Link angewendet<br />
wird, auf die Datei (oder Verzeichnis oder was auch immer), auf die das Link<br />
zeigt. Er ist also auch dann erfolgreich, wenn der betrachtete Name eigentlich nur<br />
ein symbolisches Link ist. (Warum hat filetest2 dieses Problem nicht?)<br />
10.2 Das können Sie mit etwas wie<br />
ls /bin /sbin /usr/bin /usr/sbin | wc -l<br />
bestimmen. Alternativ dazu können Sie einfach an der Eingabeaufforderung der<br />
Shell zweimal Tab drücken – die Shell antwortet dann mit etwas wie<br />
Display all 2371 possibilities? (y or n)<br />
und das ist – in Abhängigkeit von Ihrem PATH – Ihre Antwort. (Wenn Sie als normaler<br />
Benutzer angemeldet sind, dann sind die Programme in /sbin und /usr/sbin<br />
in der Regel nicht dabei.)<br />
10.3 Benutzen Sie statt »grep ⟨Muster⟩ *.txt« das Kommando »grep ⟨Muster⟩<br />
*.txt /dev/null«. Damit hat grep immer min<strong>des</strong>tens zwei Dateinamenparameter,<br />
wobei /dev/null die Ausgabe nicht weiter verfälscht. – <strong>Die</strong> unter <strong>Linux</strong> gebräuchliche<br />
GNU-Implementierung von grep unterstützt eine Option -H, die dasselbe<br />
bewirkt, aber das ist nicht portabel.<br />
Copyright © 2012 <strong>Linup</strong> <strong>Front</strong> GmbH