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 ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
6.4 Umgang mit Dateien 99<br />
Übungen<br />
C<br />
C<br />
C<br />
6.23 [!2] Finden Sie alle Dateien in Ihrem System, die größer als 1 MiB sind,<br />
und lassen Sie deren Namen ausgeben.<br />
6.24 [2] Wie können Sie find benutzen, um eine Datei zu löschen, die einen<br />
merkwürdigen Namen hat (etwa mit unsichtbaren Kontrollzeichen oder mit<br />
Umlauten, die von älteren Shells nicht verstanden werden)?<br />
6.25 [3] (Beim zweiten Durcharbeiten.) Wie würden Sie beim Abmelden dafür<br />
sorgen, dass etwaige Dateien in /tmp, die Ihnen gehören, automatisch<br />
gelöscht werden?<br />
6.4.5 Dateien schnell finden – locate und slocate<br />
Das Kommando find erlaubt die Suche nach Dateien gemäß einer Vielzahl von<br />
Kriterien, muss aber die komplette Dateihierarchie unterhalb <strong>des</strong> Startverzeichnisses<br />
ablaufen. Je nach deren Umfang kann es also durchaus eine Weile dauern,<br />
bis die Suche abgeschlossen ist. Für einen typischen Anwendungsfall – die Suche<br />
nach Dateien mit einem bestimmten Namen – gibt es darum ein beschleunigtes<br />
Verfahren.<br />
Das Kommando locate gibt alle Dateien aus, deren Namen auf ein bestimmtes<br />
Shell-Suchmuster passen. Im einfachsten Fall ist das eine simple Zeichenkette:<br />
$ locate brief.txt<br />
/home/hugo/Briefe/brief.txt<br />
/home/hugo/Briefe/omabrief.txt<br />
/home/hugo/Briefe/omabrief.txt~<br />
✁✁✁✁✁<br />
A<br />
Obwohl es sich bei locate um einen ziemlich grundlegenden <strong>Die</strong>nst handelt<br />
(wie die Tatsache unterstreicht, dass das Programm zum <strong>LPI</strong>C-1-Stoff<br />
gehört), gehört es nicht bei allen <strong>Linux</strong>-Systemen zur Standardinstallation.<br />
Wenn Sie zum Beispiel eine SUSE-Distribution verwenden, müssen Sie das<br />
Paket findutils-locate explizit nachinstallieren, bevor Sie locate benutzen<br />
können.<br />
<strong>Die</strong> Sonderzeichen »*«, »?« und »[…]« funktionieren bei locate wie bei Suchmustern<br />
in der Shell. Während eine Anfrage ohne Suchmuster-Sonderzeichen jedoch<br />
alle Namen liefert, in denen der Suchbegriff irgendwo auftaucht, gibt eine Anfrage<br />
mit Suchmuster-Sonderzeichen nur diejenigen Namen aus, die komplett – von<br />
Anfang bis Ende – vom Suchbegriff beschrieben werden. Aus diesem Grund beginnen<br />
Suchmuster-Anfragen mit locate meistens mit »*«:<br />
$ locate "*/brief.t*"<br />
/home/hugo/Briefe/brief.txt<br />
/home/hugo/Briefe/brief.tab<br />
✁✁✁✁✁<br />
B<br />
Am besten stellen Sie locate-Anfragen mit Sonderzeichen in Anführungszeichen,<br />
damit die Shell sie nicht zu expandieren versucht.<br />
Der Schrägstrich (»/«) erfährt keine Sonderbehandlung:<br />
$ locate Briefe/oma<br />
/home/hugo/Briefe/omabrief.txt<br />
/home/hugo/Briefe/omabrief.txt~<br />
Copyright © 2012 <strong>Linup</strong> <strong>Front</strong> GmbH