Znajduje dużą liczbę plików znajdujących się w różnych podkatalogach „Dropnot”
$ locate Dropnot
Czy mogę znaleźć tylko lokalizację katalogu locate
? (w którym znajduje się katalog „Dropnot”)
Więc jeśli Dropnot
jest włączony /home/me/
, jest to jedyny zwracany wpis.
Jeśli tak, jaki jest najprostszy / najkrótszy sposób?
Najlepiej przez flagę lub symbol zamiast wypływać i żerować na nim itp., Ale wziąłbym wszystko jako opcję.
Może jakiś Dropnot $ na końcu linii? (ale nie działał).
-e
opcjionly print entries for currently existing files
?Mam
mlocate
zainstalowany. Jest to domyślnie rozpowszechniany przez RedHat, więc będzie dostępny na Fedorze, RHEL, CentOS. Odman 1 locate
Więc jeśli uruchomisz
locate -b '\Dropknot'
, raportuje tylko pliki lub katalogi z dokładnie tym ciągiem.źródło
locate -b /Dropnot
pracowałZ GNU locate (inne implementacje locate mogą się różnić):
Jeśli w argumencie nie ma symbolu wieloznacznego,
locate
szuka ścieżki o podanym wyszukiwanym haśle jako podłańcuch. Gdy argumentem jest wzór powłoki zawierający co najmniej jeden znak wieloznaczny,locate
szuka pełnego dopasowania. Jeśli nie chcesz wypisywać/Dropnot
na końcu:źródło
Jeśli korzystasz z RedHat, prawdopodobnie masz zainstalowany mlocate, a nie Secure Locate. W takim przypadku nie ma opcji -e i musisz użyć opcji -r lub --regexp, aby wyszukiwać za pomocą podstawowych wyrażeń regularnych.
źródło
Slackware
slocate
domyślnie korzysta z wyszukiwania wyrażeń regularnych z opcjąr
:wyszuka katalogi o nazwie
Dropnot
.To byłoby szukać np ponumerowanych -tylko
Dropnot
katalogów (Dropnot1, Dropnot2, etc.):źródło
Nie wiem, dlaczego nikt nie zaproponował czegoś takiego:
To tylko sprawdza, czy którykolwiek z ciągów lokalizujących jest katalogiem i drukuje go
źródło