Existe uma maneira de criar um arquivo que execute um comando de terminal ao clicar nele?

15

Existe uma maneira de criar um arquivo que execute um comando de terminal ao clicar nele? Semelhante a uma extensão .bat no windows?

    
por Chaos 22.02.2012 / 21:00

3 respostas

33

Abra 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 gerenciador de arquivos, clique com o botão direito do mouse, abra a caixa de diálogo de propriedades, vá para a guia de 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 escolher executá-lo em uma janela de terminal .

    
por RobinJ 22.02.2012 / 21:06
8

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

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

Você pode criar um script com qualquer editor de texto favorito, basta abrir um e iniciar o script, você pode usar qualquer interpretador de shell que você deseja que seja o normal usado bash e sh .

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

Depois de editar, salve seu arquivo e torne-o executável.

Você pode abrir um terminal e digitar chmod 755 foo (onde foo é seu nome de script) ou clicar com o botão direito no arquivo que você acabou de criar e na aba permissões clique em Make the file executable .

Quando terminar, você pode clicar duas vezes no arquivo e o gerenciador de arquivos deve tentar executá-lo ou perguntar se deseja executá-lo. Como alternativa, você também pode invocar seu script em um terminal, mudando a pasta para onde seu script está e invocando-o com ./foo .

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

    
por Bruno Pereira 22.02.2012 / 21:17
1

Se for um comando simples de uma linha, você pode criar um arquivo .desktop , por exemplo, para um simples comando de cópia como (na 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 a extensão .desktop , torne-o executável e execute-o com um clique duplo.

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

    
por Jacob Vlijm 06.12.2014 / 12:19