Der Befehl whereis zeigt dir den Speicherort von Binärdateien, Quelldateien und Manpages eines Programms. Anders als which, das nur die ausführbare Datei findet, liefert whereis alle zugehörigen Dateien auf einen Blick.
Syntax
whereis [OPTIONEN] BEFEHL...
Ohne Optionen durchsucht whereis vordefinierte Verzeichnisse nach allen drei Dateitypen: Binärdatei, Quelldatei und Manpage.
Suchverzeichnisse anzeigen
Mit -l siehst du, welche Verzeichnisse whereis durchsucht:
whereis -l
Die Ausgabe zeigt alle Pfade, die whereis standardmäßig prüft.
Grundlegende Verwendung
Finde alle Dateien zum Befehl bash:
whereis bash
bash: /bin/bash /etc/bash.bashrc /usr/share/man/man1/bash.1.gz
Die Ausgabe enthält drei Teile:
/bin/bash– die ausführbare Binärdatei/etc/bash.bashrc– eine Quelldatei (Konfiguration)/usr/share/man/man1/bash.1.gz– die Manpage
Existiert ein Befehl nicht, gibt whereis nur den Namen ohne Pfade aus.
Mehrere Befehle abfragen
Du kannst mehrere Befehle in einem Aufruf übergeben:
whereis netcat uptime
netcat: /bin/netcat /usr/share/man/man1/netcat.1.gz
uptime: /usr/bin/uptime /usr/share/man/man1/uptime.1.gz
Nur bestimmte Dateitypen suchen
Nur Binärdateien finden
Mit -b suchst du ausschließlich nach der ausführbaren Datei:
whereis -b ping
ping: /bin/ping
Wenn du nur den Pfad zur Binärdatei brauchst, ist which oft die bessere Wahl – es gibt den Pfad ohne Präfix aus.
Nur Manpages finden
Mit -m findest du die Dokumentation:
whereis -m grep
Nur Quelldateien finden
Mit -s suchst du nach Quelldateien:
whereis -s bash
Die Ausgabe zeigt nur Quelldateien, falls vorhanden.
Suche auf bestimmte Verzeichnisse einschränken
Du kannst die Suche auf eigene Verzeichnisse beschränken. Verwende dafür:
-Bfür Binärdateien-Mfür Manpages-Sfür Quelldateien
Nach der Verzeichnisliste markiert -f den Beginn der Befehlsnamen:
whereis -b -B /bin -f cp
cp: /bin/cp
Dieser Aufruf sucht die Binärdatei von cp ausschließlich in /bin.
Ungewöhnliche Einträge finden
Die Option -u findet Befehle mit ungewöhnlicher Dateikonstellation – etwa Binärdateien ohne Manpage oder mit mehreren Dokumentationen.
Beispiel: Alle Dateien in /bin ohne Manpage finden:
cd /bin && whereis -m -u *
Das Sternchen (*) steht für alle Dateien im aktuellen Verzeichnis.
Zusammenfassung
| Option | Beschreibung |
|---|---|
-l | Zeigt die durchsuchten Verzeichnisse |
-b | Sucht nur nach Binärdateien |
-m | Sucht nur nach Manpages |
-s | Sucht nur nach Quelldateien |
-B | Legt Suchverzeichnis für Binärdateien fest |
-M | Legt Suchverzeichnis für Manpages fest |
-S | Legt Suchverzeichnis für Quelldateien fest |
-f | Markiert den Beginn der Befehlsnamen |
-u | Findet Einträge mit ungewöhnlicher Dateikonstellation |
Der Befehl whereis ist nützlich, wenn du wissen willst, wo ein Programm installiert ist und ob Dokumentation vorhanden ist. Für die reine Pfadabfrage einer Binärdatei ist which schneller und direkter.