Czy system plików linux obsługuje szybkie wyszukiwanie / indeksowanie plików?


21

Zastanawiam się, dlaczego nie ma żadnego narzędzia, które umożliwiłoby szybkie wyszukiwanie plików na dysku twardym, np. „Przeszukuj wszystko”. Wystarczy wpisać część nazwy pliku, a wszystkie pliki zawierające słowo kluczowe pojawią się natychmiast. Czy nie jest możliwe zaprojektowanie programu do rejestrowania nazw wszystkich plików w jakimś katalogu w bazie danych, aby można było szybko przeszukiwać bazę danych w poszukiwaniu nazw plików?


Drobny naciąg, ale może pomóc lepiej zrozumieć system. Zasadniczo systemy plików nie obsługują bezpośrednio wyszukiwania plików ani tworzenia indeksów. Zadaniem systemu plików jest przechowywanie plików. Wyszukiwanie i indeksowanie odbywa się za pomocą różnych programów narzędziowych. Odbywa się to w ten sposób, ponieważ prostszy system plików = mniejsza szansa na błędy i pozwala użytkownikowi skonfigurować poziom budowania indeksu i które obszary powinny być celami.
Perkins

Odpowiedzi:


13

Uruchom sudo updatedbi locate [ filename or part ]
updatedbzaktualizuj bazę danych indeksu.
Jeśli chcesz zlokalizować program, uruchomwhereis [ program name ]


1
Fajnie, ale jak zrobić wyszukiwanie lokalizacji w określonym katalogu w Linux Linux?
hvjkjdtmkgh

cóż, w tym celu możesz użyć findpolecenia, użyj go w ten sposób find [path to directory] | grep "file name or part"Przeszukuje rekurencyjnie, więc możesz po prostu przeszukać katalog podstawowy i automatycznie wyszuka plik w dowolnym podkatalogu.
Gufran,

W przypadku konkretnego katalogu:locate foo | grep /home/bar/baz
Scott Severance

Dzięki, ale czy możesz podać mi przykład? Jestem zupełnie nowy w Linuksie. W systemie Windows piszesz D: \\ nazwa_folderu itp. Jaki jest odpowiednik linuksa? Ponadto, czy to narzędzie ma GUI, dzięki czemu mogę bezpośrednio otworzyć plik?
hvjkjdtmkgh

narzędzia takie jak locatelub findnie mają wbudowanego GUI, możesz użyć narzędzia innej firmy, takiego jak catfish. Aby zainstalować narzędzie, możesz wyszukać catfishw centrum oprogramowania lub uruchomić to polecenie sudo apt-get install catfish. Po zainstalowaniu tego możesz otworzyć program z Unity Dash. jeśli chodzi o strukturę plików w systemie Linux, nie ma C, Dnapędów, wszystkie partycje są montowane jako katalog wewnątrz katalogu głównego, czyli /(ukośnik odwrotny). więc wszystko idzie bezpośrednio do wewnątrz /, tak jak katalog domowy (taki sam jak katalog użytkownika w /home/
systemie

5

Jeśli szukasz tylko nazw plików, już to robi, to się nazywa locate

Bardziej zaawansowane wyszukiwanie można znaleźć w narzędziu do śledzenia: https://wiki.ubuntu.com/Tracker (zobacz także to pytanie: Jakie są alternatywy dla Spotlight OS X? )

Więcej opcji można znaleźć tutaj: https://help.ubuntu.com/community/FindingFiles


Jak mogę zlokalizować wyszukiwanie w określonym katalogu?
hvjkjdtmkgh

To kolejne pytanie, ale odpowiedź można znaleźć tutaj serverfault.com/questions/313733/… :)
Nanne

ale znalezienie linku do plików na help.ubuntu wydaje się całkiem dobrym opisem twoich wyborów?
Nanne

@hvjkjdtmkgh: Zobacz mój komentarz do odpowiedzi Gufrana, jak przeszukiwać określony katalog.
Scott Severance
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.