¿Hay una interfaz de CLI para la base de datos Contacts.app (anteriormente Address Book.app)?
Ejemplo:
mycontacts --email '*@google.com' # to get Googlers
¿Hay una interfaz de CLI para la base de datos Contacts.app (anteriormente Address Book.app)?
Ejemplo:
mycontacts --email '*@google.com' # to get Googlers
Los contactos todavía tienen soporte para AppleScript. Puede ver la documentación de las propiedades y comandos admitidos al abrir su diccionario en el Editor de AppleScript.
osascript -e 'tell app "Contacts" to properties of people where vcard contains "@gmail.com"'
No encontré una forma de verificar los campos de correo electrónico reales utilizando un solo especificador.
set l to {}
tell application "Contacts"
repeat with p in people
repeat with e in (get value of emails of p)
if contents of e ends with "@gmail.com" then set end of l to name of p
end repeat
end repeat
end tell
l
Lo más parecido a una solución genérica es el comando contacts
de Shane Celis disponible en enlace . También está disponible como un paquete en homebrew , que se puede instalar con: $ brew install contacts
Hay otras opciones que también pueden funcionar para usted. Los contactos solo almacenan información en una base de datos sqlite para que pueda acceder a ella con el comando sqlite. Podría crear un script personalizado para realizar una tarea en particular, si lo desea.
Scott Stevenson tenía una herramienta llamada abtool , que fue popular por un tiempo, pero parece ser un enlace muerto ahora. También puedes probar buscando en algunas de las cosas en GitHub . En particular, dado que la aplicación de Shane Celis parece no mantenerse (aunque todavía funciona bien), hay algunos que están construyendo reemplazos .
Lea otras preguntas en las etiquetas contacts