Proste find / -type f -name ""byłoby załatwić sprawę, jeśli znasz dokładną nazwę pliku.
find / -type f -iname "filename*" jeśli chcesz dopasować więcej plików (zignoruj wielkość liter).
Unikaj -typeopcji, jeśli chcesz wyszukiwać katalogi itp. Więcej informacji znajdziesz w instrukcji wyszukiwania. Aby zobaczyć instrukcję, wydaj polecenie:
Cholera, byłem tylko kilka sekund wolniejszy: P Zmienię to, by pokazać polecenie lokalizacji.
Nitin Venkatesh
2
Spowoduje to również przeszukanie wszystkich zamontowanych urządzeń, które mogą chcieć po prostu wyszukać/mount/hddyouwanttosearch
Callum Rogers
Warto zauważyć, że wyszukiwanie jest bardzo powolne, w porównaniu do indeksowanego systemu wyszukiwania, takiego jak lokalizowanie (ale także bardziej wydajny)
tumbleweed,
48
Możesz także użyć locatedo wyszukiwania poleceń. Dlaczego ludzie używają funkcji lokalizowania, jeśli funkcja znalezienia działa? Ponieważ lokalizowanie jest znacznie szybsze niż znajdowanie, ponieważ przeszukuje bazę danych indeksowanych lokalizacji w celu znalezienia pliku / wyrażenia regularnego.
Przykłady:
locate some-file.avi przeszukuje bazy danych prawie każdego pliku na dysku w poszukiwaniu pliku o nazwie „some-file.avi”.
locate -i "some-file.avi" zignoruje wielkość szukanego pliku.
locate -i "*.txt" wyświetli listę lokalizacji wszystkich plików z rozszerzeniem **. txt * w twoim systemie.
man locate aby uzyskać więcej informacji o pliku.
Być może trzeba będzie uruchomić updatedbnajpierw, aby upewnić się, że baza danych indeksu jest aktualna, w przeciwnym razie polecenie „zlokalizuj” może nie zwrócić tego, czego szukasz.
Mężczyzna, który o to zapytał, twierdzi, że używa serwera, więc nie ma GUI. Ale i tak to świetna odpowiedź!
Rafał Cieślak,
8
Jeśli szukasz ciągu wewnątrz pliku, możesz użyć grep. Oto przykładowe polecenie:
grep -r -i "some string" /home/yourusername
Znajdziesz to "some string"w /home/yourusernamekatalogu. Wyszukiwanie zignoruje case ( -i) i rekurencyjne katalogi ( -r). Możesz użyć /jako katalogu do przeszukiwania całego katalogu, ale może to nie być bardzo wydajne.
W Ubuntu wiem, że wszyscy chcą być dogmatyczni, jeśli chodzi o używanie wiersza poleceń przez cały czas, a ja byłem w przeszłości taki, ale uwielbiam narzędzie Gnome „Wyszukaj pliki ...”. Myślę, że to niesamowite.
Powinieneś spróbować przeszukać KDE. Jest o wiele lepszy niż gnom. Nadal czekam, aż Nautilus dogoni wszechstronność systemu wyszukiwania KDE. Z tego powodu Dolphin / Konqueror są znacznie lepsze.
Luis Alvarado,
Tak, tak naprawdę myślałem o przejściu na Kubuntu. Rzucę na to okiem.
djangofan,
3
W przypadku konfiguracji pulpitu zainstaluj „narzędzie wyszukiwania gnome” sudo apt-get install gnome-search-tool
Nie instaluj tego na serwerze, spowoduje to również zainstalowanie pakietu Ubuntu Desktop.
Dzięki @Rinzwind za zwrócenie na to uwagi.
Filtry zawierają:
Wybierz folder, który chcesz przeszukać. W tym przypadku\
Zawiera tekst - jest to nazwa pliku.
Data modyfikacji - mniej lub więcej niż liczba dni.
Rozmiar pliku - co najmniej lub co najwyżej określony rozmiar. Możesz także wyszukiwać puste pliki.
Właściciel pliku - użytkownik, grupa lub nierozpoznany właściciel.
Odpowiedzi:
Proste
find / -type f -name ""
byłoby załatwić sprawę, jeśli znasz dokładną nazwę pliku.find / -type f -iname "filename*"
jeśli chcesz dopasować więcej plików (zignoruj wielkość liter).Unikaj
-type
opcji, jeśli chcesz wyszukiwać katalogi itp. Więcej informacji znajdziesz w instrukcji wyszukiwania. Aby zobaczyć instrukcję, wydaj polecenie:man find
źródło
/mount/hddyouwanttosearch
Możesz także użyć
locate
do wyszukiwania poleceń. Dlaczego ludzie używają funkcji lokalizowania, jeśli funkcja znalezienia działa? Ponieważ lokalizowanie jest znacznie szybsze niż znajdowanie, ponieważ przeszukuje bazę danych indeksowanych lokalizacji w celu znalezienia pliku / wyrażenia regularnego.Przykłady:
locate some-file.avi
przeszukuje bazy danych prawie każdego pliku na dysku w poszukiwaniu pliku o nazwie „some-file.avi”.locate -i "some-file.avi"
zignoruje wielkość szukanego pliku.locate -i "*.txt"
wyświetli listę lokalizacji wszystkich plików z rozszerzeniem **. txt * w twoim systemie.man locate
aby uzyskać więcej informacji o pliku.Być może trzeba będzie uruchomić
updatedb
najpierw, aby upewnić się, że baza danych indeksu jest aktualna, w przeciwnym razie polecenie „zlokalizuj” może nie zwrócić tego, czego szukasz.źródło
updatedb
należy go uruchomić jako root.updatedb
dodaje/
się do indeksu domyślnie, jak może być jeszcze szybszy niżfind /
?Zacznij od kliknięcia ikony „Folder domowy” w programie uruchamiającym.
W oknie, które zostanie otwarte, kliknij „Wyszukaj”.
Wpisz w polu to, co chcesz wyszukać, a następnie naciśnij klawisz Enter.
W menu rozwijanym lokalizacji wybierz dysk twardy, a następnie kliknij przycisk Załaduj ponownie.
Wyniki zostaną wyświetlone. Mam nadzieję, że to pomaga!
źródło
Jeśli szukasz ciągu wewnątrz pliku, możesz użyć grep. Oto przykładowe polecenie:
Znajdziesz to
"some string"
w/home/yourusername
katalogu. Wyszukiwanie zignoruje case (-i
) i rekurencyjne katalogi (-r
). Możesz użyć/
jako katalogu do przeszukiwania całego katalogu, ale może to nie być bardzo wydajne.źródło
W Ubuntu wiem, że wszyscy chcą być dogmatyczni, jeśli chodzi o używanie wiersza poleceń przez cały czas, a ja byłem w przeszłości taki, ale uwielbiam narzędzie Gnome „Wyszukaj pliki ...”. Myślę, że to niesamowite.
źródło
W przypadku konfiguracji pulpitu zainstaluj „narzędzie wyszukiwania gnome”
sudo apt-get install gnome-search-tool
Nie instaluj tego na serwerze, spowoduje to również zainstalowanie pakietu Ubuntu Desktop.
Dzięki @Rinzwind za zwrócenie na to uwagi.
Filtry zawierają:
\
źródło
Trying to locate a file, how can I search the entire hard drive for a file?
Nigdzie nie ma „instalacji serwera” ...Jeśli nie chcesz pamiętać
find
(co jest bardzo potężnym) parametrów, które możesz zainstalować z oficjalnych repozytoriów:Trzy z nich są świetne, ale znalazłem kfind najlepszy.
Ze strony wiki Pomocy społeczności Ubuntu możesz znaleźć przydatne:
źródło
Jeśli chcesz znaleźć zagnieżdżone w niektórych katalogach:
źródło