Associar uma extensão a um programa no Ubuntu

Publicado por Eduardo Mozart de Oliveira em 24/10/2016

[ Hits: 5.089 ]

Blog: http://www.eduardomozartdeoliveira.blogspot.com/

 


Associar uma extensão a um programa no Ubuntu



Tipo MIME são usados para caracterizar os arquivos para que o sistema operacional possa saber como abri-lo. [1]

Ele é parte da "mágica" do Linux, que detecta o tipo MIME do arquivo e pode abrir o programa corretamente para exibir o arquivo, ainda que ele não possua extensão.

Quando instalamos um aplicativo através do apt-get, geralmente o instalador do pacote realiza as associações de forma transparente para o usuário. Mas ao instalarmos um aplicativo manualmente ao sistema (como o Eclipse IDE), precisamos associar as extensões que desejamos abrir com ele manualmente, adicionando o aplicativo instalado manualmente ao banco de dados de tipos MIME do sistema.

Para atribuirmos um tipo MIME a um aplicativo, precisamos descobrir o tipo MIME do arquivo usando o comando file:

file -b --mime-type index.jpeg

Edite o arquivo *.desktop que você deseja associar a extensão. Normalmente, os atalhos para aplicativos estão no diretório /usr/share/applications (sistema) ou $HOME/.local/share/applications (usuário local). Você precisará adicionar (caso não exista) o atributo MimeType ao atalho e informar a saída do comando file como valor do mesmo [2]:

MimeType=image/jpeg

Precisamos atualizar o banco de dados de tipos MIME (mimeinfo.cache) do sistema/usuário local. Ao executar o comando abaixo, o Ubuntu irá ler todos o atributo MimeType de todos os arquivos *.desktop e associar os arquivos com o programa correspondente:

# update-desktop-database -v

No exemplo do post, ao darmos botão direito em uma imagem JPEG, teremos a opção de visualizá-la com o programa que adicionamos o MimeType do arquivo no atalho *.desktop. Você precisará realizar este procedimento toda vez que adicionar um arquivo ao banco de dados MIME, de forma a substituir o programa atual para o programa recém-adicionado.

Mas você pode automatizar esta tarefa usando o mimeinfo-cache-preferred: ele é um script que edita o banco de dados de tipos MIME no contexto do sistema, permitindo definirmos um atalho (arquivo *.desktop) como padrão para todos os tipos MIME que ele pode lidar.

# ./mimeinfo-cache-preferred.sh eclipse.desktop

O mimeinfo-cache-preferred edita a preferência a nível do sistema (/usr/share/applications/mimeinfo.cache). Caso os usuários tenham definido um programa específico para um tipo MIME no contexto do usuário local ($HOME/.local/share/applications/mimeinfo.cache), a preferência do usuário não será sobrescrita.

Caso deseja sobrescrevê-la, você pode deletar o arquivo mimeinfo.cache do usuário local para que ele gere um novo arquivo de preferências de tipos MIME com os tipos MIME padrão do sistema.

Referências

[1] CCM. Formato de arquivos MIME. http://br.ccm.net/contents/649-formato-de-arquivos-mime (Último acesso em 04/10/2016)

[2] ASK UBUNTU. How to associate a file with a program installed in wine, 2011. http://askubuntu.com/questions/6765/how-to-associate-a-file-with-a-program-installed-in-wine (Último acesso em 04/10/2016)

Outras dicas deste autor

Pacotes RPM no CentOS - Erro: "Warning: RPMDB altered outside of yum" [Resolvido]

Alterar programa padrão para arquivos no Deepin

yum - Impedindo atualização de certos componentes

Instalando os Serviços de Integração do Hyper-V no CentOS 5.8 e 6.3 e Kernel 2.6.32+

Sem acesso ao hospedeiro em host-only (VirtualBox 5.1.24): VM vboxnet0 encontra-se em estado DOWN

Leitura recomendada

Upgrade do Slackware de uma versão X para atual (14.2)

O arquivo motd

Backup de Servidores de Arquivo Linux para Windows via rSync

Instalando impressora Lexmark X1195 (usando o driver z600 por compatibilidade)

Placa Wireless - Configuração no Notebook LG R410

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts