Ubicar una aplicación por su identificador de paquete desde la línea de comando

5

Estoy buscando una forma de encontrar la ubicación de una aplicación en el sistema desde la línea de comandos usando su identificador de paquete. Puedo abrirlo así:

open -b 'com.zerotier.ZeroTierOne'

... donde com.zerotier.ZeroTierOne es mi ID de paquete, pero lo que quiero hacer es localizar dónde está realmente instalada la aplicación. Quiero un comando que devolverá (por ejemplo):

/Applications/ZeroTier One.app

en respuesta a una consulta por el identificador 'com.zerotier.ZeroTierOne'.

La opción "-R" para abrir se mostrará en el buscador, pero quiero que esto sea completamente no interactivo y se realice a través de un script de shell.

    
pregunta AdamIerymenko 03.01.2014 - 18:26

1 respuesta

11

El comando mágico es:

mdfind kMDItemCFBundleIdentifier = "com.zerotier.ZeroTierOne"

Puedes determinar esto trabajando hacia atrás desde mdls foo | grep kMDItemCF

Entonces, si no conoces el identificador del paquete CF de iPhoto:

Mac:~ me$ mdls /Applications/iPhoto.app | grep kMDItemCF
kMDItemCFBundleIdentifier           = "com.apple.iPhoto"
    
respondido por el AdamIerymenko 03.01.2014 - 18:29

Lea otras preguntas en las etiquetas