Como posso encontrar arquivos * .desktop?


85

Que eu saiba, todos os atalhos no Unity Launcher têm um arquivo * .desktop correspondente. Eu tenho um atalho (para skrooge ) que não tem um ícone. Como posso encontrar o arquivo * .desktop correspondente a este atalho para que eu possa adicionar um ícone a ele?

Respostas:


113

Provavelmente está parado, /usr/share/applications/mas se você quiser encontrar todos os .desktoparquivos no sistema, execute o seguinte:

find / -name '*.desktop'

ou

sudo updatedb
locate *.desktop

Para encontrar arquivos com "skrooge" em seu caminho ou nome, adicione um grep ao comando:

locate *.desktop | grep -iR "skrooge"

21
locate -i "*skrooge*.desktop". Embora haja principalmente três lugares em que a unidade procurará arquivos da área de trabalho. ~/.local/share/applications, /usr/local/share/applicationsE /usr/share/applications. Se houver arquivos da área de trabalho para o mesmo comando em vários locais, ele usará a maioria dos três que eu listei.
geirha

Apareceu como /usr/share/applications/kde4/skrooge.desktop. Obrigado. :)
KOVIKO

33

O sistema armazena os arquivos .desktop em /usr/share/applications/. Infelizmente, se você abrir essa pasta no nautilus, os arquivos .desktop aparecerão com o ícone especificado no arquivo e com o nome do arquivo chamado dentro do arquivo. Você também não poderá editar esses arquivos clicando neles e selecionando editar.

Para editar esses arquivos, você precisa abrir essa pasta dentro de uma janela do terminal. Executar um lscomando mostrará todos os arquivos .desktop com seus nomes reais. Quando você localizar o .desktop que deseja alterar, execute gksudo gedit {file-name}.desktop.

É prática normal manter todos os arquivos .desktop criados ou editados em sua pasta pessoal ~/.local/share/applications.


A execução do terminal pode ser mais útil para alguns, mas também é possível arrastar do nautilus para o gedit ou outro editor de texto.
Jon Hanna

qual é o sentido do diretório "~ / .local / share / applications"? Os arquivos não parecem ser usados, não posso adicioná-los como "atalhos" ao Unity.
Malachiasz

2
@Malachiasz Na verdade, os arquivos * .desktop ~/.local/share/applicationssão recarregados quando a sessão é reiniciada. Portanto, efetue logout e logon novamente. Observe que eles são específicos para esse usuário.
precisa saber é o seguinte

Eu também encontrei este Q & A aqui no site útil: Como forçar Unidade de recarga ~ / .local / share / applications /
hakre

8

Alguns detalhes adicionais para complementar as outras respostas:

Normalmente, os .desktoparquivos dos pacotes serão localizados /usr/share/applications.

Se desejar, você pode copiar um ~/.local/share/applicationse editá-lo lá sem precisar do sudo . Os produtos em ~/.local/share/applicationsvão substituir artigos de harmonização /usr/share/applicationse /usr/local/share/applications, mas só são visíveis para o usuário.

Como alternativa, você pode colocar uma cópia editada na /usr/local/share/applicationsqual ela substituirá a outra /usr/share/applicationsenquanto estiver visível para todo o sistema.

Observe que você não deve editar os .desktoparquivos /usr/share/applicationsdiretamente; quaisquer alterações que você fizer serão substituídas automaticamente quando o aplicativo for atualizado pelo gerenciador de pacotes.

Extraído daqui


+1, resposta mais completa de todos eles
Jon Bentley
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.