Meu alias .bashrc não é executado no arquivo .desktop

19

Eu adicionei a seguinte linha ao arquivo .bashrc :

alias midos="sh /home/erkanmdr/Belgeler/midos/midos.sh"

Este comando funciona bem no terminal e no tty. Mas não estou trabalhando no meu arquivo de atalho .desktop.

arquivo midos.desktop:

[Desktop Entry]
Name=MiDoS
Exec=midos
Icon=/home/erkanmdr/Belgeler/midos-128.png
Terminal=true

Como executo meu comando midos no arquivo de atalho do .desktop?

    
por ErkanMDR 16.07.2014 / 17:48

3 respostas

21

Enquanto as outras respostas oferecem uma boa solução para o seu problema, para responder à sua pergunta, o jeito certo de usar um alias dentro de um arquivo .desktop é, no seu caso:

Exec=bash -ic "midos"

Isso porque os aliases do arquivo ~/.bashrc funcionarão somente  em um shell interativo bash (a opção -i é usada neste caso para iniciar o bash interactive).

Se outro usuário quiser usar o mesmo arquivo .desktop, ele deve ter definido também esse alias.

    
por Radu Rădeanu 16.07.2014 / 22:01
6

Eu ficaria extremamente surpreso se a GUI tivesse alguma idéia sobre o seu shell. Você deve colocar o caminho completo em seu arquivo da área de trabalho:

Exec=/home/erkanmdr/Belgeler/midos/midos.sh

E certifique-se de que o seu script é executável.

    
por glenn jackman 16.07.2014 / 18:17
6

Pequena solução alternativa.

Adicione este #!/bin/bash à primeira linha do seu script, se já não estiver lá.

Por exemplo, seu script antes:

sometext1
sometext2
sometext3
sometext4

Você cria scripts depois:

#!/bin/bash
sometext1
sometext2
sometext3
sometext4

Agora copie seu script para /usr/local/bin e torne-o executável:

sudo cp /home/erkanmdr/Belgeler/midos/midos.sh /usr/local/bin/midos
sudo chmod +x /usr/local/bin/midos

Depois disso, funcione como quiser.

    
por c0rp 16.07.2014 / 18:50