
Ich möchte Hilfe, um nur einen Namen aus meiner Datei /etc/passwd auszudrucken. Wenn es beispielsweise zwei Einträge mit den Namen „avi“ und „avig“ gibt, wie soll ich dann nur „avi“ drucken? Ich habe die Befehle „cut“ und „unique“ ausprobiert, bekomme aber keine richtige Ausgabe.
Antwort1
Sie müssen die gesuchte Zeichenfolge verankern. Versuchen Sie es mit egrep '^avi:' /etc/passwd
.
Antwort2
Wenn Sie nur den Eintrag für einen bestimmten Benutzer aus Ihrem abrufen möchten, passwd
verwenden Sie einfach den getent
Befehl wie
getent passwd avi
Andernfalls müssen Sie nur sicherstellen, dass Ihr regulärer Ausdruck/Muster spezifisch genug ist, um nur das zu erfüllen, was Sie möchten.
Wenn Ihr grep
System dies unterstützt, können Sie angeben, grep
dass Ihr Muster nur als ganzes Wort abgeglichen werden soll, z. B.
grep -w ^avi /etc/passwd
funktioniert mit GNU und BSD greps