Existe uma maneira de criar um arquivo que execute um comando do terminal quando você clicar nele?

14

Existe uma maneira de criar um arquivo que execute um comando do terminal quando você clicar nele? Semelhante a uma extensão .bat no Windows?

Caos
fonte

Respostas:

32

Abra o seu editor de texto e digite a seguinte linha: #! /bin/bash. Deixe uma linha vazia e comece a digitar seus comandos. Salve o arquivo, a extensão não importa. Vá para o arquivo no seu gerenciador de arquivos, clique com o botão direito do mouse, abra a caixa de diálogo de propriedades, vá para a guia permissões na caixa de diálogo, marque a opção "Permitir a execução deste arquivo" e clique no botão Fechar. Agora você pode clicar duas vezes no arquivo e optar por executá-lo em uma janela do terminal .

RobinJ
fonte
1
por curiosidade .. o que você usou para gravar e postar para animar assim?
Caos
6
Byzanz;) Se você prestar atenção, poderá me ver minimizando uma janela de terminal com byzanz-record no início da animação.
RobinJ
4
+1, esses gifs animados são bastante lisos e são uma ótima resposta.
22412 psusi
1
byzanz cool !!!!
wim
1
Olá eu só seguir o seu passo, mas quando eu duplo clique no arquivo só abrir o editor getedit ajuda por favor
Roel
8

No Linux, esses são chamados scripts de scripts de shell com mais precisão.

O Linux não se importa com a extensão do arquivo, examinará as permissões do arquivo para descobrir se o arquivo está definido como executável e, se for o caso, será executado.

Você pode criar um script com qualquer editor de texto favorito, apenas um aberto e começar a scripting, você pode usar qualquer shell intérprete você quer ser os usados normais bashe sh.

Normalmente você inicia seus scripts declarando qual interpretador de comando você deseja usar, #!/bin/bashpara bash e #!/bin/shsh. Depois de fazer isso, você pode começar a digitar comandos nas linhas de script, assim como no Windows com scripts em lote.

Após a edição, salve o arquivo e torne-o executável.

Você pode abrir um terminal e digitar chmod 755 foo(ondefoo está o nome do seu script) ou clicar com o botão direito do mouse no arquivo que você acabou de criar e, na guia permissões, clicar em Tornar o arquivo executável .

Quando terminar, clique duas vezes no arquivo e seu gerenciador de arquivos deve tentar executá-lo ou perguntar se você deseja executá-lo. Como alternativa, você também pode invocar seu script em um terminal, alterando o diretório para onde ele está e invocando-o ./foo.

Um bom começo para aprender os scripts de shell do Linux é o LinuxCommand.org , eles ensinam o que você precisa, como fazê-lo e tem muitos bons exemplos de scripts nos quais você pode dar uma olhada.

Bruno Pereira
fonte
1

Se for um comando simples de uma linha, você poderá criar um .desktoparquivo, por exemplo, para um comando de cópia direta como (em sua forma mais simples):

[Desktop Entry]
Name=Simple Copy
Exec=/bin/bash -c 'cp <source> <destination>'
Type=Application

Coloque o comando entre aspas, salve o arquivo com uma .desktopextensão, torne-o executável e execute-o clicando duas vezes.

insira a descrição da imagem aqui

Você pode tornar um .desktoparquivo mais complicado, adicionar opções, palavras-chave, definir um ícone etc.
Veja este link .

Jacob Vlijm
fonte