Meg kell találnom néhány rejtett mappába temetett konfigurációt, és nem tudom felidézni, hol kell közvetlenül eljutni hozzájuk. Cmd + Shift + G .

Csináltam egy sudo find -name Foo* -et (lassú), de egyik sem adott vissza fájlok rejtett mappákban voltak.

Mi a legegyszerűbb módszer az összes rejtett fájl keresésére?

Megjegyzések

  • Megjegyzés: A sudo felesleges, kivéve, ha olyan könyvtárakban kell keresni, amelyekhez nincs hozzáférése. Rejtett könyvtárakban történő kereséshez nincs szükség magasabb jogosultságokra, ha az ' s miért használják ' t a példádban.

Válasz

iv class = ” Úgy tűnik, hogy a “”

mdfind válasz sok rejtett fájlt figyelmen kívül hagy. mdfind "kMDItemFSInvisible==1&&kMDItemFSName==filename" felsorolja a .DS_Store fájlok, de például .bash_history nem. Nem találtam semmilyen módot fájl keresésére s néhány rejtett könyvtárban, például /private/etc/.

Egyébként a Bármely fájl keresése sok gyorsabb, mint a find.

A Find Any File olyan program a Mac OS X számára, amely lehetővé teszi fájlok keresését a lemezeken.

  • A Spotlight-tal ellentétben nem adatbázist használ, hanem a fájlrendszer-illesztőprogramot használja. gyors keresési műveletek, ha rendelkezésre állnak. Ez lehetővé teszi a fájl tulajdonságainak keresését, például a nevet, dátumokat, méretet stb., De a fájlok tartalmát nem (ehhez használja a Spotlight vagy az EasyFind alkalmazást).
  • Bármely fájl keresése olyan fájlokat találhat, amelyeket a Spotlight nem használ , pl. a kötegekben és csomagokban, illetve a belső mappákban találhatóak, amelyeket általában kizárnak a Spotlight keresésből.
  • Végül elég gyors. A keresés csak néhány másodpercet vesz igénybe egy belső merevlemezen vagy SSD-n. Próbálja meg magad!

Válasz

Feltéve, hogy a „rejtett” fájl – olyan fájlokat ért, amelyek neve ponttal kezdődik, vagy amelyek valahol egy könyvtár alatt találhatók, amelynek neve ponttal kezdődik, és nem a láthatatlan fájlok egyéb formái , a következő parancs kinyomtatja az összes rejtett fájl nevét. Lassan halad át az összes fájlnéven a rendszer mindenhol.

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

Magyarázat:

  • -type d -exec find {} \; -prune a find parancsot hajtja végre minden könyvtár (amelynek neve egyezik a .* névvel), és az -prune miatt kihagyja a könyvtárba ereszkedést.
  • -type d … -o -print minden nem könyvtárat kinyomtat, amelyek megfelelnek a .* fájlnak.

Ha keres egy meghatározott névvel vagy mintával rendelkező fájlhoz:

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

A teljes erők */.* mintája a rejtett könyvtár alatt legyen.

A -xdev címet érdemes felvenni a / után, hogy elkerülje a speciális fájlrendszerek bejárását és cserélhető lemezek.

Megjegyzések

  • Ah, köszönöm. Úgy tűnik, hogy a -x-et előnyben részesítjük, mivel az -xdev elavult.

Válasz

Próbálja ki a locate parancs. Először meg kell sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist, és várnia kell a kereső adatbázis létrehozására.

Megjegyzések

  • ' akkora kellemetlenséget okoz, hogy a Spotlight nem ' nem vesz fel rejtett / (pont-) fájlokat, mert az mdfind jelentősen felülmúlja a helyeket .

Válasz

EasyFind kiváló alternatív alkalmazás a munka elvégzéséhez. Ingyenes és egyszerű. Szöveget kereshet fájlokban (akár láthatatlanokban is). < = Ez könnyebben megtalálhatja a konfigurációs fájlokat.

Az App Store-ból beszerezheti https://itunes.apple.com/us/app/easyfind/id411673888?mt=12

Jogi nyilatkozat: Nem állok kapcsolatban a fejlesztővel.

Megjegyzések

  • Nem működik APFS-formátumú meghajtókon.

Válasz

ag kereshet rejtett fájlokat fájlnév szerint.

Például:

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

Telepítés

brew install the_silver_searcher 

https://github.com/ggreer/the_silver_searcher

rg gyorsabb, mint ag.

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

Telepítés

brew install ripgrep 

https://github.com/BurntSushi/ripgrep

Megjegyzések

  • Hogyan segít ez az OP által leírt helyzetben (aki nyilván nem tudja, hogy ' nem ismeri a rejtett fájlok nevét)?
  • Működik is. Például rg –files –hidden ~ / | rg " .swiftlint * "

Válasz

Ha keresni szeretne .DS_Store rejtett fájlok, ez a parancs jól működik.

du -a | grep .DS_Store 

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük