Brug Spotlight fra kommandolinjen med mdfind

Spotlight er en af ​​mine yndlingsfunktioner i Mac OS X, jeg bruger det nok mere end end Dock. At være i stand til at slå kommandospil til hurtigt at finde dokumenter, e-mails og starte applikationer er uendeligt nyttige. For nogle af os er det nødvendigt at være i terminalen, og ville det ikke være cool at have denne ultra seach-funktion i kommandolinjen? Nå er det der, åbner din terminal (eller iTerm) og udforsk mdfind, kommandolinjeversionen af ​​Spotlight.

Selvom du er ny eller uvidende om Unix-understøttelsen af ​​Mac OS X, kan du prøve det her.

Åbn din terminal og skriv mdfind, du får nogle retninger tilbagekaldt på dig, fordi du ikke angav en søgeforespørgsel, det er lidt som en forkortet manuel side, men du kan hente den manuelt med -h-flag, ligesom de fleste andre kommandolinjeværktøjer.

$ mdfind
mdfind: no query specified.

Dette skyldes, at du skal forsyne mdfind med nogle data for at søge efter, for eksempel:

mdfind [search directive]

Men lad os fortsætte med det komplette instruktionssæt, der kommer fra at returnere hjælpesektionen, lad os gennemgå dette et øjeblik:

$ mdfind
mdfind: no query specified.

Brug: mdfind [-live] [-onlyin directory] forespørgsel
liste de filer, der matcher forespørgslen
forespørgsel kan være et udtryk eller en række ord

-Live forespørgslen skal forblive aktiv
-onlyin dir Søg kun i den givne mappe

-0 Brug NUL (`` \ 0 '') som en stilseparator til brug med xargs -0.

eksempel: mdfind billede
eksempel: mdfind "kMDItemAuthor == '* MyFavoriteAuthor *'"
eksempel: mdfind -live MyFavoriteAuthor

Hvis det ser forvirrende ud, er det ikke.

Lad os sige, at du vil finde en fil med navnet 'opskrift', og du ved, at den er i din dokumentmappe, du vil skrive:

$ mdfind recipes -onlyin ~/Documents/

Hvis du har masser af opskrifter, er det nok en god idé at rør udgangen til mere som vist nedenfor:

$ mdfind recipes -onlyin ~/Documents/ | more

Ved at pipere resultaterne gennem mere, kan du se en skærmfuld ad gangen. Du kan afslutte mere ved at trykke på kontrol-c.

Hvis du ikke ved, hvor noget er, kan du være meget mere vagt og kun bruge navnetekvivalenten:

mdfind -name Pumpkin

Dette vil søge hele mac'en til alt med "græskar" i navnet, som så vil blive rapporteret tilbage.

Der er meget mere at gøre med mdfind-kommandoen, men vi holder det nemt nu. Ud over nysgerrighed er mdfind-kommandoen sandsynligvis mere nyttig for sysadminer, unix geeks, shell scripters og programmører end den almindelige Mac-bruger. For resten af ​​os er kommandospillet hvor det er, og vi klager ikke.