Es wird versucht, mit dem locate
Befehl eine genaue Übereinstimmung für das angegebene Muster zu finden. Es werden jedoch alle übereinstimmenden Dateien angezeigt.
Zum Beispiel: Ich möchte eine Binärdatei mit dem Namen: node finden
Aber es gibt mir alle Übereinstimmungen, die dieses Wort enthalten:
server2# locate node
/usr/share/man/man9/getnewvnode.9.gz
/usr/share/man/man9/ieee80211_amrr_node_init.9.gz
/usr/share/man/man9/ieee80211_dump_node.9.gz
/usr/share/man/man9/ieee80211_dump_nodes.9.gz
/usr/share/man/man9/ieee80211_find_rxnode.9.gz
/usr/share/man/man9/ieee80211_find_rxnode_withkey.9.gz
/usr/share/man/man9/ieee80211_free_node.9.gz
-b
Schalter verwenden, um nur mit dem Basisnamen abzugleichen:locate -br node$
Sie können grep mit find verwenden
Das $ -Zeichen weist grep an, das Ende der Zeichenfolge zu betrachten.
quelle
Deaktivieren Sie
locate
den impliziten Glob, indem Sie einen eigenen Glob hinzufügen, der allen Verzeichnissen entspricht:Von der Manpage:
Diese Syntax stimmt mit einem vollständigen Datei- oder Verzeichnisnamen überein, auch im Stammverzeichnis.
quelle