Ich habe eine Liste von „Aufgaben“, die ich durchgehe, um den Shell-Code zu lernen. Ich muss grep verwenden, um die Zeile zu isolieren, /etc/passwd
die „ “ enthält ubu
. Ich weiß, dass der Befehl less /etc/passwd
zum Zugriff verwendet wird /etc/passwd
und dass grep
er zum Suchen nach einem bestimmten Zeichenfolgenmuster verwendet wird, aber das war es auch schon .
Antwort1
Mit grep
:
$ grep -F "ubu" /etc/passwd
Dies wird verwendet grep -F
, um nach der wörtlichen Zeichenfolge ubu
in der Datei zu suchen /etc/passwd
. Ohne das -F
würde es als regulärer Ausdruck grep
behandelt . In diesem Fall würde es keinen Unterschied machen, aber wenn die Zeichenfolge Zeichen wie das enthält , das in regulären Ausdrücken „speziell“ ist, können Sie sie auf diese Weise „weniger speziell“ machen.ubu
*
grep
gibt alle Zeilen zurück, die die Übereinstimmung enthalten.
Wenn ubu
es sich um einen Benutzernamen handelt (einvollständigBenutzername, nicht nur ein Teil davon), dann führt das Folgende zusätzlich eine Suche in allen Verzeichnisdiensten (wie LDAP oder NIS/YP) durch, die das System möglicherweise verwendet:
$ getent passwd ubu
Antwort2
Sie sollten wahrscheinlich mit einem Tutorial beginnen, um die Grundlagen zu erlernen.
Wenn Sie einfach suchengrep
Manpage von, hätten Sie es ganz leicht herausfinden können.
Das können Sie grundsätzlich tun grep "ubu" /etc/passwd
.