Wyklucz katalogi w Linux Find

Wyklucz Katalogi W Linux Find



Podczas pracy z Linuksem możesz otrzymać instancję, w której chcesz szybko zlokalizować plik na swoim komputerze. Linux oferuje różne polecenia wyszukiwania, w tym polecenie „znajdź”, które pozwala znaleźć określony plik. Jedyną wadą jest to, że polecenie generuje wiele bałaganu i plików. Jeśli jednak masz pewność, że plik docelowy nie znajduje się w danym katalogu, możesz go wykluczyć w poleceniu „znajdź”, aby zmniejszyć wyniki wyszukiwania.

Ten post opisuje, czym jest polecenie „znajdź” i jak działa. Ponadto zobaczymy, jak możesz użyć polecenia, wykluczając katalogi w systemie Linux. Czytaj!

Praca z poleceniem Znajdź

Polecenie „znajdź” w systemie Linux pomaga zlokalizować pliki i katalogi, aby uniknąć konieczności ich ręcznego znajdowania. Używa następującej składni:







znajdź <ścieżka-do-pliku>

Oto przykład, w którym próbujemy znaleźć plik o nazwie „linuxhint.c” w katalogu domowym:





Dane wyjściowe zawierają bezwzględną ścieżkę do znalezienia pliku docelowego. Załóżmy, że chcemy znaleźć pliki za pomocą wzorca. Powiedzmy, że chcemy znaleźć dowolne pliki tekstowe w Dokumenty/ w naszym systemie Linux. Określamy nasze polecenie, jak pokazano poniżej:





Zwróć uwagę, jak polecenie „znajdź” wyświetla wszystkie katalogi zawierające pliki tekstowe. To prosty przykład użycia polecenia „znajdź” systemu Linux.



Jak wykluczyć katalogi w Linux Find

Po wykonaniu polecenia „znajdź” przeszukuje określony katalog i podkatalogi. Użyj jednej z trzech poniższych metod, aby wykluczyć podkatalog z wyszukiwania:

1. Opcja przycinania

Do demonstracji używamy linuxhint/ . Widzimy, że ma trzy podkatalogi, jak pokazano na poniższym obrazku:

W przypadku użycia z opcją -print opcja „przycinania” pomaga wykluczyć określone podkatalogi podczas pracy z poleceniem „znajdź”. Na poprzednim obrazku możemy użyć polecenia „znajdź” i podać ścieżkę do katalogu Linuxhint. Następnie określ, aby wykluczyć katalog dir2 z wyników wyszukiwania.

Wykonujemy nasze polecenie w następujący sposób:

znajdź /home/kyle/Desktop/linuxhint/ -ścieżka /home/kyle/Desktop/linuxhint/dir2 -prune -o -print

Zauważ, że dir2 nie jest nigdzie wyświetlany na wyjściu, co potwierdza, że ​​udało nam się go wykluczyć.

Możemy również wykonać to samo polecenie w skróconej wersji, jak pokazano poniżej:

Możesz także wykluczyć wiele katalogów. W tym celu używamy opcji -o. Poniższy przykład wyklucza dir1 i dir3, pozostawiając tylko dir2. Jeśli masz pewność, że plik lub folder, który chcesz znaleźć, nie znajduje się w innych katalogach, ta opcja zmniejsza wyniki wyszukiwania.

2. Poprzez opcję „Nie”.

W zapytaniu wyszukiwania można dodać „nie”, aby określić, które katalogi mają zostać wykluczone. Jego wdrożenie jest prostsze niż opcja przycinania.

Oto składnia, której należy użyć:

znajdź [ścieżkę] -type f -not -path „*/katalog-do-wykluczenia/*”

Załóżmy, że chcemy wykluczyć dir1 z wyników wyszukiwania „znajdź”, które zaimplementowaliśmy z opcją przycinania. Wykonujemy polecenie w następujący sposób:

znajdować . -typ f -not -ścieżka „*/dir2/*”

Otrzymujemy taki sam wynik, jak przy użyciu opcji przycinania. Określony katalog jest wykluczony; w wynikach wyszukiwania pojawiają się tylko pozostałe podkatalogi.

3. Poprzez „!” Opcja

Ostatnią metodą wykluczenia katalogów w poleceniu „znajdź” systemu Linux jest dodanie znaku „!” operator. Działa jak operator „not”, a jego składnia jest prawie identyczna.

znajdź [ścieżkę] -wpisz f! -ścieżka „*/katalog-do-wykluczenia/*”

Załóżmy, że powtórzymy wcześniejszy przykład, aby wykluczyć katalog dir2 za pomocą znaku „!” operator. Nadal otrzymujemy ten sam wynik. Zmieniła się tylko część używanego przez nas polecenia.

Są to trzy sposoby wykluczania katalogów w poleceniu „znajdź” Linuksa.

Wniosek

Polecenie „znajdź” systemu Linux jest przydatne w szybkim lokalizowaniu plików i folderów. Jest coraz lepiej, ponieważ możesz wykluczyć katalogi z polecenia wyszukiwania, aby zmniejszyć wyniki wyszukiwania. Aby wykluczyć katalogi, możesz użyć „przycinania”, „nie” lub „!” opcje. W tym poście omówiono działanie trzech opcji z podanymi przykładami wykluczania katalogów. Wypróbuj to!