Existe uma maneira de definir o aplicativo padrão para uma extensão de arquivo por meio de um script da Apple, comando de linha de comando (como defaults write [...]
).
Eu sei que você pode alterá-lo manualmente através do painel de informações ou usando o RCDefaultApp, mas como tenho que configurar muitas máquinas e contas de usuário, gostaria de encontrar uma maneira de automatizar o processo.
fonte
checking which SDK to use... configure: error: darwin12.0.0 is not a supported system
..avi
arquivos no Quicktime Player (usando o Finder → Obter informações → Abrir com… → _Alterar tudo ), depois corriduti -s org.videolan.vlc public.avi all
para usar o VLC e reiniciei o LaunchServices - mas parecia não ter efeito. (Veja a lista de UTIs declaradas pelo sistema .)~/Library/Preferences/com.apple.LaunchServices.plist
, duti converte a maioria das extensões de nome de arquivo em UTIs automaticamente, para que você possa especificar os tipos como em.avi
vez depublic.avi
. As UTIs de algumas extensões de nome de arquivo dependem dos aplicativos que estão instalados.O Launch Services é responsável pelas associações de arquivos padrão.
Digamos que eu queira alterar todos os arquivos de texto para abrir no Sublime Text 2.
Primeiro, preciso do kMDItemCFBundleIdentifier para Sublime Text 2. Posso usar mdls para obter essas informações:
Eu posso descobrir o valor do tipo de conteúdo para arquivos de texto inspecionando um deles com mdls :
Nesse caso, alterarei o aplicativo padrão para todos os
public.plain-text
tipos.Para fazer isso, digite:
Se quiser que as alterações entrem em vigor, preciso reiniciar o Launch Services da seguinte maneira:
E para dar crédito onde o crédito é devido, aprendi sobre essa abordagem nesta pergunta e resposta do stackoverflow.com: /programming/9172226/how-to-set-default-application-for-specific-file -types-em-mac-os-x
fonte
Esta publicação no SuperUser também contém algumas informações úteis. Para saber mais sobre o LaunchServices, aqui está um link para a documentação do desenvolvedor da Apple. Vá para a seção LSSetDefaultRoleHandlerForContentType (página 48).
fonte