Cria um arquivo .desktop que abre e executa um comando em um terminal

32

Eu gostaria de saber como escrever o comando Exec de um arquivo .desktop para abrir um novo terminal e executar um script de shell nele. O script de shell está funcionando e acessível por todos os usuários. Ao iniciar o script a partir do terminal, tudo funciona, mas não ao tentar iniciar o script a partir de um arquivo .desktop.

Aqui estão algumas combinações que já experimentei:

Exec=gnome-terminal -x sh -c 'echo hello'
Exec=sh -c 'gnome-terminal echo hello'
Exec=sh -c 'echo hello'
Exec=echo hello

A opção do terminal .desktop está definida como verdadeira.

    
por Paradiesstaub 20.03.2014 / 14:56

3 respostas

38

O conteúdo do arquivo da área de trabalho deve ser semelhante (consulte como criar um arquivo .desktop usando um editor de texto ):

[Desktop Entry]
Version=1.0
Name=Test        
Comment=Test the terminal running a command inside it
Exec=gnome-terminal -e "bash -c 'echo hello;$SHELL'"
Icon=utilities-terminal
Terminal=false
Type=Application
Categories=Application;

Ou:

[Desktop Entry]
Version=1.0
Name=Test        
Comment=Test the terminal running a command inside it
Exec=bash -c 'echo hello;$SHELL'
Icon=utilities-terminal
Terminal=true 
Type=Application
Categories=Application;

No primeiro caso, o campo Terminal está definido como false (talvez contrário às suas expectativas) e no segundo caso está definido como true , mas o resultado é em ambos os casos o mesmo.

    
por Radu Rădeanu 20.03.2014 / 20:11
2
!#/bin/bash

gnome-terminal -e YOUR_COMMANDS

Faça o arquivo acima. Não esqueça de sudo chmod +x filename.sh

    
por Mr.Lee 20.03.2014 / 15:10
0

Eu faço isso. A primeira linha do arquivo de texto é! # / Bin / bash

As linhas subseqüentes do arquivo de texto são os comandos (o script de shell).

Salve o arquivo como algo.sh

Abra as propriedades do arquivo e ative o arquivo de execução como um programa.

Agora, quando o arquivo é clicado duas vezes, eu tenho a opção de executá-lo.

    
por hatterman 20.03.2014 / 15:05