Hallo Freund, ich hoffe, Sie haben die gestern gezeigten Befehle geübt. Heute folgen weitere Befehle, um sich mit dem Terminal vertraut zu machen, wie man, apropos, which, whatis, locate und find.
Mann-Seiten
Die Handbuchseiten enthalten die Dokumentation zu den Befehlen der Befehlszeile. “man” ist der Name des Programms, das diese Seiten anzeigt. Schauen wir uns die Manpage für den Befehl“whoami” an. Ebenfalls kurz behandelt an Tag 1.
WHOAMI(1) Benutzerbefehle WHOAMI(1) NAME whoami - Druck der effektiven Benutzerkennung SYNOPSIS whoami[OPTION]... BESCHREIBUNG Druckt den Benutzernamen, der mit der aktuell gültigen Benutzerkennung verbunden ist. Dasselbe wie id -un. --help diese Hilfe anzeigen und beenden --version Versionsinformationen ausgeben und beenden AUTOR Geschrieben von Richard Mlynarik. ...
Der Inhalt der Handbuchseiten ist in Abschnitte unterteilt, die wie folgt nummeriert sind:
Abschnitt | Inhalt |
1 | Benutzer-Befehle |
2 | Programmierschnittstellen für Kernel-Systemaufrufe |
3 | Programmierschnittstellen zur C-Bibliothek |
4 | Spezielle Dateien wie Geräteknoten und Treiber |
5 | Dateiformate und Konventionen |
6 | Spiele und Bildschirmschoner |
7 | Gemischtes |
8 | Systemverwaltungsbefehle und Dämonen |
Bei einer Standardsuche mit dem “man” erhalten wir Ergebnisse aus dem ersten Abschnitt. Wir können jedoch den Zusatz “-k” hinzufügen, um nach einem Schlüsselwort in allen Abschnitten der Dokumentation zu suchen. Versuchen wir es mit dem “passwdBefehl”.
chgpasswd (8) - Aktualisieren von Gruppenpasswörtern im Batch-Modus chpasswd (8) - Aktualisieren von Passwörtern im Batch-Modus expect_mkpasswd (1) - Generieren eines neuen Passworts, optional Anwendung auf einen Benutzer gpasswd (1) - Verwalten von /etc/group und /etc/gshadow ...
Wir bekommen viele Befehle, aber der, den wir brauchen, versteckt sich irgendwo dazwischen. Wir müssen unsere Suche mit Hilfe von regulären Ausdrücken eingrenzen. Sie können sich die folgende
Seite
zum besseren Verständnis von regex und zum Üben auf dieser
Website
oder auf Ihrer Kommandozeile.
In unserem Beispiel unten haben wir ein Caret(^) und ein Dollarzeichen($) verwendet, um die gesamte Zeile abzugleichen und Übereinstimmungen mit Teilstrings zu vermeiden.
passwd (1) - Benutzerpasswort ändern passwd (1ssl) - Passwort-Hashes berechnen passwd (5) - die Passwortdatei
Nun können Sie die obige Abschnittsnummer (5) verwenden, um eine spezifische Suche durchzuführen.
Apropos als Alternative für Mann -k
Wie wir oben gesehen haben, sucht“man -k” nach einem Schlüsselwort in der Beschreibung der Befehle (ohne die Verwendung von regulären Ausdrücken). “apropos” macht das Gleiche, aber ohne die Option“-k” hinzuzufügen.
Sie können es selbst ausprobieren, indem Sie“man -k passwd” &“apropos passwd” eingeben, die Ergebnisse sollten die gleichen sein.
chgpasswd (8) - Aktualisierung von Gruppenpasswörtern im Batch-Modus chpasswd (8) - Aktualisierung von Passwörtern im Batch-Modus expect_mkpasswd (1) - neues Passwort generieren, optional auf einen Benutzer anwenden gpasswd (1) - /etc/group und /etc/gshadow verwalten grub-mkpasswd-pbkdf2 (1) - Hash-Passwort für GRUB generieren ...
Suchen von Dateien mit “welche”
Angenommen, Sie haben zwei Versionen desselben Programms auf Ihrem Computer. Daher können Sie den “welcher“Befehl, um herauszufinden, welche Version Ihre Shell verwenden wird.
Der Befehl “which” durchsucht die Verzeichnisse, die im $PATH definiert sind Umgebungsvariable. Der $PATH ist lediglich eine Sammlung von Pfaden, von denen jeder auf ein Verzeichnis verweist. Wir können die “echo“Befehl, um die Verzeichnisse in unserem Pfad herauszufinden.
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
Die Ausgabeliste trennt jeden Pfad mit Doppelpunkten (
:
). Mit dem Befehl“which” wird die Suche von links nach rechts gestartet. Der erste Pfad wird also“/usr/local/sbin” sein und danach“/usr/local/bin” und so weiter. Testen wir dies mit der Eingabe von“which apropos“.
/usr/bin/apropos
Der Standardbefehl hält an, wenn er ein Ergebnis gefunden hat. Wenn wir jedoch die Option -a (all) verwenden, wird“which” die Suche fortsetzen.
/usr/bin/apropos /bin/apropos
Oben werden alle in den Verzeichnissen unserer $PATH-Umgebung gefundenen Treffer aufgelistet, wobei die Suche von links nach rechts beginnt. Schauen wir sie uns nun an und sehen wir den Unterschied. Siehe Tag 1 für den Befehl ls.
┌──(kali㉿kali)-[~] └─$ ls -l /bin/apropos lrwxrwxrwx 1 root root 6 Jul 5 05:06 /bin/apropos -> whatis
“ls” (Liste),“-l” (lange Liste). Die“5” vor der Uhrzeit (05:06) ist die Größe der ausführbaren Datei in Bytes (kann mit den Größen der gefundenen Dateien verglichen werden). Nachdem wir beide überprüft haben, sehen wir, dass sie auf denselben symbolischen Link oder dieselbe Verknüpfung verweisen, nämlich“whatis“.
Testen wir diesen neu gefundenen Befehl:
┌──(kali㉿kali)-[~] └─$ man -k '^passwd$' passwd (1) - Benutzerpasswort ändern passwd (1ssl) - Passwort-Hashes berechnen passwd (5) - die Passwortdatei
Zusammenfassung: Der“whatis“-Befehl kann als Alternative zum“man“-Befehl mit der Option“-k” und dem regulären Ausdruck“^” und“$” verwendet werden, der viel leichter zu merken ist.
Es gab keinen Unterschied zwischen diesen beiden Dateien, außer ihrem Verzeichnis. Um ganz sicher zu gehen, überprüfen wir beide Versionen mit dem “–versionOption”.
┌──(kali㉿kali)-[~] └─$ /bin/apropos --version apropos 2.9.3
Eine andere Möglichkeit, Dateien zu “finden
Die “finden SieDer Befehl “locate” ist der schnellste Weg, um die Speicherorte von Dateien und Verzeichnissen in Kali zu finden. Im Gegensatz zum Befehl“which” durchsucht “locate” eine eingebaute Datenbank namens“locate.db” und nicht die gesamte Festplatte selbst. Diese Datenbank wird regelmäßig automatisch durch den Cron-Scheduler aktualisiert. Wir können die Datenbank “locate.db” aber auch manuell mit dem Befehl“updatedb” aktualisieren, um auf die Minute genau auf dem neuesten Stand zu sein. Wir müssen den Befehl mit Admin-Rechten(sudo) ausführen.
┌──(kali㉿kali)-[~] └─$ locate whoami /whoami.txt /home/kali/Desktop/whoami.txt /usr/bin/ldapwhoami /usr/bin/whoami /usr/share/bash-vervollständigung/vervollständigungen/ldapwhoami /usr/share/man/man1/ldapwhoami.1.gz /usr/share/man/man1/whoami.1.gz /usr/share/windows-resources/binaries/whoami.exe
Die Grundform des“locate“-Befehls findet alle Dateien im Dateisystem, beginnend mit der Wurzel, wie oben zu sehen. Die Ergebnisse enthalten alle oder einen Teil der Suchkriterien. An Tag 0 lernen Sie den Filesystem Hierarchy Standard(FHS) besser kennen.
Nehmen wir an, wir wollen die Dateien oder Verzeichnisse finden, die nur unsere Suchkriterien enthalten:
Der Befehl find
ist diejenige, mit der wir am flexibelsten umgehen können, aber es braucht einige Zeit, um sie zu beherrschen. Damit können wir nach Dateien suchen, deren ungefähre Dateinamen wir kennen. Es bietet die Möglichkeit, Dateien nach Alter, Größe, Name, Eigentümer, Zeitstempel, Gruppe, Typ, Berechtigungen, Datum und anderen Kriterien zu suchen. Das kann ziemlich knifflig werden.
Für diese Suchvorgänge werden wir Wildcards verwenden. Wildcards sind Symbole, die ein oder mehrere Zeichen ersetzen oder darstellen. Die gebräuchlichsten Platzhaltersymbole sind das Fragezeichen ( ? ), das für ein einzelnes Zeichen steht, und das Sternchen ( * ), das für eine beliebige Zeichenfolge steht.
Das erste Zeichen ( / ) nach dem find-Befehl dient zur Angabe des Startverzeichnisses für unsere rekursive Suche.
Um“find” vom Stammverzeichnis aus suchen zu lassen, würden wir“find /” verwenden.
Im Home-Ordner:“find ~” und im aktuellen Ordner: “find .“
Es gibt viel zu entdecken mit der “finden.Befehl”. Weitere Informationen finden Sie auf der Manpage.
Anmerkung: Beim Befehl find wird standardmäßig zwischen Groß- und Kleinschreibung unterschieden. Wenn Sie möchten, dass bei der Suche nach einem Wort oder einem Satz die Groß- und Kleinschreibung nicht beachtet wird, verwenden Sie das “Option “-iname” mit dem Befehl“find“. Dies ist die Version des Befehls“-name“, bei der die Groß-/Kleinschreibung nicht berücksichtigt wird.
Es gibt noch einen weiteren Befehl für die Suche, nämlich den“whereis“-Befehl. Es liegt an Ihnen, sie zu erforschen.
0 Comments