Minun täytyy löytää joitain piilotettuihin kansioihin haudattuja kokoonpanoja, enkä voi muistaa, mihin heidän on siirryttävä suoraan Cmd + Vaihto + G .

Tein sudo find -name Foo* (hidas), mutta yksikään palautetusta tiedostot olivat piilotetuissa kansioissa.

Mikä on helpoin tapa etsiä kaikkia piilotettuja tiedostoja?

Kommentit

  • Huomaa: sudo on tarpeeton, ellei sinun tarvitse etsiä hakemistoista, joihin sinulla ei ole pääsyä. Piilotetuista hakemistoista haku ei vaadi korkeampia käyttöoikeuksia, jos ' s miksi ' käytetään esimerkissäsi.

Vastaa

mdfind näyttää jättävän huomiotta paljon piilotettuja tiedostoja. mdfind "kMDItemFSInvisible==1&&kMDItemFSName==filename" ei luetteloa .DS_Store -tiedostot, mutta ei esimerkiksi .bash_history. En ole löytänyt mitään tapaa etsiä tiedostoa s joissakin piilotetuissa hakemistoissa, kuten /private/etc/.

Joka tapauksessa Etsi mikä tahansa tiedosto on paljon nopeampi kuin find.

Find Any File on Mac OS X: n ohjelma, jonka avulla voit etsiä tiedostoja levyiltä.

  • Päinvastoin kuin Spotlight, se ei käytä tietokantaa, vaan käyttää tiedostojärjestelmäohjainta ”nopeat hakutoiminnot, jos käytettävissä. Tämän avulla voit etsiä tiedoston ominaisuuksia, kuten nimeä, päivämääriä, kokoa jne., Mutta ei tiedostosisältöä (käytä siihen Spotlightia tai EasyFindiä).
  • Etsi mikä tahansa tiedosto voi löytää tiedostoja, joita Spotlight ei , esim. nippujen ja pakettien sisällä ja sisällä olevissa kansioissa, jotka eivät yleensä kuulu Spotlight-hakuun.
  • Lopuksi, se on melko nopeaa. Haku vie vain muutaman sekunnin sisäiseltä kiintolevyllä tai SSD: llä. itse!

Vastaa

Olettaen, että ”piilotettu” tiedosto ”tarkoitat tiedostoja, joiden nimi alkaa pisteellä tai jotka sijaitsevat jonnekin hakemiston alla, jonka nimi alkaa pisteellä, eikä muita näkymättömien tiedostojen muotoja , seuraava komento tulostaa kaikkien piilotettujen tiedostojen nimet. Se on hidasta, kun se kulkee kaikkien tiedostonimien läpi kaikkialla järjestelmässäsi.

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

Selitys:

  • -type d -exec find {} \; -prune suorittaa find jokainen hakemisto (jonka nimi vastasi .*), ja ohittaa laskeutumisen kyseiseen hakemistoon -prune: n vuoksi.
  • -type d … -o -print saa kaikki .* -tyyppiset hakemistot tulostumaan.

Jos etsit tiedostolle, jolla on tietty nimi tai malli:

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

Koko polun voimat */.* -kuvio vastaa olla piilotetun hakemiston alla.

Voit halutessasi lisätä -xdev / -kuvakkeen alle välttääksesi erityisten tiedostojärjestelmien kulkua ja irrotettavat levyt.

Kommentit

  • Ah, kiitos. Ja näyttää siltä, että -x on nyt suositeltava, koska -xdev on vanhentunut.

Vastaa

Kokeile locate -komento. Sinun on ensin sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist ja odotettava, että paikannustietokanta luodaan.

Kommentit

  • Se ' aiheuttaa sellaista haittaa, että Spotlight ei poista ' t piilotettuja / (piste-) tiedostoja, koska mdfind on huomattavasti parempi kuin sijoittelu .

vastaus

EasyFind on erinomainen vaihtoehtoinen työ työn tekemiseen. Se on ilmaista ja helppoa. Voit etsiä tekstiä tiedostoista (jopa näkymättömistä). < = Tämä voi olla helpompi tapa löytää asetustiedostot.

Saat sen App Storesta https://itunes.apple.com/us/app/easyfind/id411673888?mt=12

Vastuuvapauslauseke: En ole sidoksissa kehittäjään.

Kommentit

  • Ei toimi APFS-muotoisissa asemissa.

Vastaus

ag voi etsiä piilotettuja tiedostoja tiedostonimen mukaan.

Esimerkiksi:

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

Asennus

brew install the_silver_searcher 

https://github.com/ggreer/the_silver_searcher

rg on nopeampi kuin ag.

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

Kuinka asentaa

brew install ripgrep 

https://github.com/BurntSushi/ripgrep

Kommentit

  • Kuinka tämä auttaa OP: n kuvaamassa tilanteessa (joka ilmeisesti ei tiedä ' ei tiedä piilotettujen tiedostojen nimeä)?
  • Se toimii yhtä hyvin. Esimerkiksi rg –files –hidden ~ / | rg " .swiftlint * "

vastaus

Jos haluat etsiä .DS_Store piilotetut tiedostot, tämä komento toimii hyvin.

du -a | grep .DS_Store 

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *