Crie um atalho na área de trabalho clicável para um alias

4

Por exemplo, digamos que eu tenha definido um alias sob meu .bash_aliases ,

alias gotoheaven="xdg-open /path/to/heaven"

agora desejo criar um ícone clicável para ele na área de trabalho. [Eu sei make link criar atalho de pasta, mas isso eu estou pedindo é apenas para um exemplo para que eu possa estendê-lo para criar qualquer outro tipo de atalhos]. Editado: O atalho é ligado ao alias. Algo como open Terminal and run gotoheaven . Dessa forma, não preciso reescrever o alias na entrada Exec.

    
por jaydeepsb 18.12.2015 / 11:00

3 respostas

4

Para ser exato, existe um método, ou seja, executar o alias em um shell interativo;

Ou seja, crie um arquivo da área de trabalho com a seguinte Exec= line:

Exec=bash -c 'exec bash -i <<<"gotoheaven"'
  • bash -c '[...]' : inicia um shell não interativo (isso é necessário para aproveitar o redirecionamento <<< ) e executa [...] nele;
  • exec bash -i <<<"gotoheaven" : substitui o shell não interativo por um shell interativo e redireciona gotoheaven para o STDIN do shell interativo, que obtém ~/.bashrc e executa o alias.

No entanto, como isso exige mais ou menos o mesmo esforço de copiar e colar o comando do alias no novo arquivo da área de trabalho, mas executar um shell adicional, sugiro que você simplesmente copie e cole o comando do alias para o novo arquivo de desktop como descrito em uma das respostas para esta questão .

Você parece estar preso ao fato de que o atalho deve executar o alias e não um comando idêntico, o que não faz sentido a menos que você precise executar o comando no ambiente definido por ~/.bashrc (que não faz t parece ser o caso). Basta criar um arquivo da área de trabalho que execute o mesmo comando.

    
por kos 18.12.2015 / 11:23
5

Os aliases pertencem ao shell, não são comandos externos. Portanto, é impossível criar um atalho para o alias.

No entanto, é possível tomar o comando que você referencia no alias e criar o arquivo .desktop que é basicamente um atalho e depois do Exec = colocar o comando que você deseja executar

Veja um exemplo de como seria:

[Desktop Entry]
Name=MyAppName
Type=Application
Exec=xdg-open /path/to/heaven
Terminal=false
O campo

Icon=/path/to/image.png é opcional. Terminal= parte deve ser colocada para indicar se a saída precisa ser mostrada no terminal ou não. No seu caso, suponho que não seja necessário, pois você está usando xdg-open para abrir algum arquivo

Pode ser necessário tornar o arquivo executável clicando com o botão direito do mouse no arquivo, abrindo Propriedades e marcando "Executar" na guia Permissões

Ou, alternativamente, através de chmod +x /path/to/MyAppName.desktop

    
por Sergiy Kolodyazhnyy 18.12.2015 / 11:06
3

Você não pode ter um atalho para alias, em vez disso, pode usar esse truque para criar um iniciador com o mesmo nome do seu alias. No seu terminal, execute o comando:

gnome-desktop-item-edit --create-new ~/Desktop

Isso iniciará uma caixa de diálogo da GUI para criar um lançador na sua área de trabalho:

Dê um nome igual ao seu apelido "gotohell" e no comando insira seu comando: xdg-open "/path/to/hell"

Agora você pode encontrar um arquivo .desktop em sua área de trabalho chamado "gotohell"

    
por Maythux 18.12.2015 / 11:11

Tags