Vamos assumir que meu diretório atual é /Applications
e contém todos os meus aplicativos. Digamos que eu queira saber o identificador de pacote do Google Chrome :
$ mdls -raw -name kMDItemCFBundleIdentifier 'Google Chrome.app'
com.google.Chrome
Agora vamos usar isso para localizar o aplicativo :
$ mdfind kMDItemCFBundleIdentifier = com.google.Chrome
/Applications/Google Chrome.app
Agora vamos tentar o mesmo para o Tor Browser Bundle . Primeiro, obtenha o identificador de pacote configurável:
$ mdls -raw -name kMDItemCFBundleIdentifier TorBrowser.app
org.mozilla.tor browser
Em seguida, localize o aplicativo:
$ mdfind kMDItemCFBundleIdentifier = org.mozilla.tor browser
Nada. Eu provavelmente preciso citá-lo:
$ mdfind kMDItemCFBundleIdentifier = 'org.mozilla.tor browser'
Não, ainda nada. Vamos tentar outra coisa:
$ mdfind kMDItemCFBundleIdentifier = 'org.mozilla.tor'
$ mdfind kMDItemCFBundleIdentifier = "org.mozilla.tor browser"
$ mdfind kMDItemCFBundleIdentifier = org.mozilla.tor\ browser
$ mdfind kMDItemCFBundleIdentifier = "org.mozilla.tor\ browser"
$ mdfind kMDItemCFBundleIdentifier = 'org.mozilla.tor%20browser'
$ mdfind kMDItemCFBundleIdentifier = 'org.mozilla.tor+browser'
$ mdfind kMDItemCFBundleIdentifier = 'org.mozilla.tor_browser'
Nada funciona. Este é o único aplicativo com o qual já tive esse problema e o único que vi com um espaço no identificador de pacote. Como podemos fazer referência a isso?
macos
applications
tor
user137369
fonte
fonte
\`
? Ou"
citações?Respostas:
Um identificador de pacote adequado não deve ter espaço nele. De acordo com o Guia de distribuição de aplicativos da Apple -> Sobre os códigos de pacote , um
Portanto, tecnicamente,
org.mozilla.tor browser
não é um identificador de pacote válido, portanto, você obterá resultados inesperados ao tentar trabalhar com ele. Provavelmente deve ser alterado (pelo desenvolvedor) para algo comoorg.mozilla.tor.browser
ouorg.mozilla.tor-browser
etc.fonte