Jak wyszukać plik w wierszu poleceń CentOS [zamknięte]

84

Używam minimalnej wersji CentOS i próbuję zlokalizować plik, ale nie mam pojęcia, jak przeszukać cały serwer w poszukiwaniu pliku. Jestem pewien, że istnieje polecenie, aby to zrobić, czy ktoś może mi pomóc?

Dan
źródło
4
Pozwólcie, że przedstawię wam findpolecenie.
fedorqui 'SO przestań szkodzić'

Odpowiedzi:

196

Wypróbuj to polecenie:

find / -name file.look
Dennis Kerrisk
źródło
zadziałało, na zdrowie
Dan
Parametr -name nie zadziałał dla mnie ....
Crt
46

CentOS to Linux, więc tak jak w prawie wszystkich innych systemach Unix / Linux, masz findpolecenie. Aby wyszukać pliki w bieżącym katalogu:

find -name "filename"

W cudzysłowach można również umieścić symbole wieloznaczne, a nie tylko ścisłą nazwę pliku. Możesz również jawnie określić katalog, od którego chcesz rozpocząć wyszukiwanie, jako pierwszy argument do znalezienia:

find / -name "filename"

wyszuka „nazwa pliku” lub wszystkie pliki, które pasują do wyrażenia regularnego w cudzysłowach, zaczynając od katalogu głównego. Możesz także używać pojedynczych cudzysłowów zamiast podwójnych cudzysłowów, ale w większości przypadków nie potrzebujesz żadnego, więc powyższe polecenia będą działać również bez cudzysłowów. Ponadto, na przykład, jeśli szukasz plików java i wiesz, że znajdują się one gdzieś w twoim / home / nazwa użytkownika, wykonaj:

find /home/username -name *.java

Polecenie find ma znacznie więcej opcji i powinieneś zrobić:

man find

aby dowiedzieć się więcej na ten temat.

Jeszcze jedno: jeśli zaczniesz wyszukiwanie od / i nie jesteś rootem lub nie jesteś sudo wykonującym polecenie, możesz otrzymać ostrzeżenia, że ​​nie masz uprawnień do odczytu niektórych katalogów. Aby je zignorować / usunąć, wykonaj:

find / -name 'filename' 2>/dev/null

To po prostu przekierowuje stderr do / dev / null.

Martin Dinov
źródło