Esiste un modo per accedere alla geolocalizzazione di un Mac dal terminale?

45

Alcune app GUI utilizzano servizi di localizzazione OS X, ma voglio recuperare la posizione fisica di un Mac dalla riga di comando . Questo potrebbe essere utile per eseguire script, cambiare impostazioni, ecc. Il meccanismo dovrebbe essere CoreLocation , non un servizio Geo IP (dati troppo bassi, necessita di connessione online).

Il requisito minimo è l'output di longitudine e latitudine . Bello sarebbe un numero che indica la precisione. Super bello: un geocoder che fornisce i nomi delle località.

    
posta myhd 09.08.2012 - 16:12
fonte

5 risposte

29

La risposta di vilmoskörte sembra buona, ma mi sono assunto il compito di creare uno strumento che questo per la mia educazione L'ho messo su GitHub.

WhereAmI

Un semplice strumento da riga di comando. Nessuna opzione, solo corse e uscite Lat / Long, accuratezza in metri e un timestamp. Avrai bisogno dei servizi di localizzazione OS X da attivare (Preferenze di sistema > Sicurezza e privacy) e dell'autorizzazione per raccogliere la tua posizione (OS X ti chiederà al primo avvio).

Link di download diretto (.zip)

    
risposta data 09.08.2012 - 23:50
fonte
12

Questo è già stato programmato, dai un'occhiata

link

    
risposta data 09.08.2012 - 20:33
fonte
8

Sono l'autore di LocateMe, e ho appena scoperto che devo copiare LocateMe nella cartella / Applications affinché funzioni in Mountain Lion. Non sono sicuro di cosa dovrei fare per evitarlo, probabilmente per ottenere un certificato, cosa che probabilmente non perseguiterò in futuro.

Nel frattempo, per LocateMe e probabilmente gli altri, prova a copiarli su / Applicazioni e vedi se hai più fortuna.

-Rob

    
risposta data 02.01.2013 - 05:52
fonte
5

Queste app devono essere firmate con un certificato sviluppatore prima che possano autorizzare con il servizio di posizione principale. Se cerchi in Console.app puoi vedere i tentativi falliti di autorizzare:

31/12/2012 13:08:26.441 locationd[484]: Couldn't get information from PID 40084
31/12/2012 13:08:27.515 CoreLocationAgent[40086]: CodeSigningInforequest for pid=40084 

Ho utilizzato il mio account sviluppatore per creare e firmare un nuovo file binario di posta elettronica . Dopo averlo eseguito, Mountain Lion ti chiederà il permesso di accedere ai dati sulla posizione.

    
risposta data 31.12.2012 - 14:32
fonte
4

Sono l'autore di CoreLocationCLI, menzionato nei commenti sopra. Volevo solo sottolineare che abbiamo spostato il progetto in questa posizione:

link

Inoltre, ora supporta --once se stai cercando un singolo output, piuttosto che un output continuo.

Infine, c'è anche un binario completo nella pagina del progetto se preferisci non compilarlo da solo. Dovrai comunque autorizzare ("Vorresti che questa app fosse in grado di accedere alla tua posizione") alla prima esecuzione dell'app.

    
risposta data 27.08.2014 - 02:56
fonte

Leggi altre domande sui tag