Muszę znaleźć niektóre konfiguracje ukryte w ukrytych folderach i nie mogę sobie przypomnieć, gdzie mają do nich bezpośrednio przejść Cmd + Shift + G .

Wykonałem sudo find -name Foo* (wolno), ale żadne zwrócone pliki znajdowały się w ukrytych folderach.

Jaki jest najłatwiejszy sposób wyszukiwania wszystkich ukrytych plików?

Komentarze

  • Uwaga: używanie sudo jest niepotrzebne, chyba że musisz przeszukiwać katalogi, do których nie masz dostępu. Wyszukiwanie w ukrytych katalogach nie wymaga wyższych uprawnień, jeśli to ' dlaczego ' jest używany w Twoim przykładzie.

Odpowiedź

mdfind wydaje się ignorować wiele ukrytych plików. mdfind "kMDItemFSInvisible==1&&kMDItemFSName==filename" wyświetla listę .DS_Store, ale nie na przykład .bash_history. Nie znalazłem żadnego sposobu wyszukiwania pliku s w niektórych ukrytych katalogach, takich jak /private/etc/.

W każdym razie Znajdź dowolny plik to dużo szybciej niż find.

Find Any File to program dla systemu Mac OS X, który umożliwia wyszukiwanie plików na dyskach.

  • W przeciwieństwie do Spotlight nie korzysta z bazy danych, ale używa sterownika systemu plików szybkie operacje wyszukiwania, jeśli są dostępne. Umożliwia to wyszukiwanie właściwości pliku, takich jak nazwa, daty, rozmiar itp., Ale nie zawartości pliku (do tego użyj Spotlight lub EasyFind).
  • Znajdź dowolny plik może znaleźć pliki, których Spotlight nie wykrywa , np. te wewnątrz paczek i pakietów oraz w folderach wewnętrznych, które są zwykle wykluczone z wyszukiwania Spotlight.
  • Wreszcie jest dość szybkie. Wyszukiwanie zajmuje tylko kilka sekund na wewnętrznym dysku twardym lub dysku SSD. Spróbuj siebie!

Odpowiedz

Zakładając, że „ukryte plik ”masz na myśli pliki, których nazwa zaczyna się od kropki lub które znajdują się gdzieś w katalogu, którego nazwa zaczyna się od kropki, a nie inne formy niewidocznych plików , następujące polecenie wyświetla nazwy wszystkich ukrytych plików. Działa wolno, ponieważ przegląda wszystkie nazwy plików w całym systemie.

sudo find / -name ".*" \( -type d -exec find {} \; -prune -o -print \) 

Wyjaśnienie:

  • -type d -exec find {} \; -prune wykonuje find w dniu każdy katalog (którego nazwa pasuje do .*) i pomija zejście do tego katalogu z powodu -prune.
  • -type d … -o -print powoduje, że wszystkie nie-katalogi pasujące do .* są drukowane.

Jeśli szukasz dla pliku o określonej nazwie lub wzorze:

sudo find / -name "Foo*" -path "*/.*" 

Wzorzec */.* na całej ścieżce wymusza dopasowanie do znajdować się w ukrytym katalogu.

Możesz dodać -xdev po /, aby uniknąć przechodzenia przez specjalne systemy plików i dyski wymienne.

Komentarze

  • Ach, dziękuję. Wygląda na to, że preferowane jest teraz -x, ponieważ -xdev jest przestarzałe.

Odpowiedź

Wypróbuj locate polecenie. Najpierw musisz sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist i poczekać na wygenerowanie zlokalizowanej bazy danych.

Komentarze

  • To ' jest tak uciążliwe, że Spotlight nie ' nie zbiera plików ukrytych / (kropkowych), ponieważ mdfind znacznie przewyższa slocate .

Odpowiedź

EasyFind to doskonała alternatywna aplikacja do wykonania zadania. To nic nie kosztuje i łatwe. Możesz wyszukiwać tekst w plikach (nawet tych niewidocznych). < = To może być łatwiejszy sposób na znalezienie plików konfiguracyjnych.

Możesz go pobrać z App Store https://itunes.apple.com/us/app/easyfind/id411673888?mt=12

Zastrzeżenie: Nie jestem powiązany z programistą.

Komentarze

  • Nie działa na dyskach w formacie APFS.

Odpowiedź

ag może wyszukiwać ukryte pliki według nazwy pliku.

Na przykład:

ag --hidden -g ".swiftlint.yml" ~/ 

Jak zainstalować

brew install the_silver_searcher 

https://github.com/ggreer/the_silver_searcher

rg jest szybszy niż ag.

rg --files --hidden ~/ |rg ".swiftlint.yml" 

Jak zainstalować

brew install ripgrep 

https://github.com/BurntSushi/ripgrep

Komentarze

  • Jak to pomaga w sytuacji opisanej przez OP (kto najwyraźniej nie ' nie zna nazw ukrytych plików)?
  • To działa także. Na przykład rg –files –hidden ~ / | rg " .swiftlint * "

Odpowiedź

Jeśli chcesz przeszukać .DS_Store ukrytych plików, to polecenie działa dobrze.

du -a | grep .DS_Store 

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *