Como criar e executar um arquivo de script [duplicado]

6

Existe uma maneira de criar e executar um arquivo de script no Ubuntu 14.04? Talvez algo como arquivos em lote do Windows. Especificamente, quero dizer a linguagem de script padrão do terminal do Ubuntu (Bash). Como você faz um arquivo de texto contendo comandos bash que serão executados pelo terminal do Ubuntu a partir do topo do arquivo até o final.

    
por Strato1 24.05.2014 / 00:01

1 resposta

8

Seu "shell" ou a interface da linha de comando é chamada de bash. Você pode escrever um script bash que é semelhante a um arquivo em lotes. Um script bash começa com um She-bang #!/bin/bash e nada mais é do que um conjunto de comandos para executar em uma sequência para executá-los. Você não está limitado ao comando bash, você pode chamar qualquer binário no sistema usando o caminho completo para o binário ou script.

Um thread mestre em learning / books / terminal / bash / Linux etc. Recursos de aprendizado da linha de comando do Linux - cortman link

Meu primeiro bash foi vários comandos que eu estava executando várias vezes no terminal. Então, eu listei o histórico com o comando history e copiei-os em um arquivo de texto. Primeira linha deve ser esta (sem espaços antes e primeira linha):

#!/bin/bash

Depois de salvar, você deve torná-lo executável.

sudo chmod +x <path>
sudo chmod 755 <filename>

Observe que é uma boa ideia colocar seus scripts em um só lugar, para que você possa executá-los sem exigir um caminho. Se você criar um diretório bin em sua casa (mkdir ~ / bin) na próxima vez que fizer login, isso será automaticamente incluído em seu PATH.

mkdir ~/bin
chmod 755 ~/bin

Editar: Se você quiser que o script esteja disponível para todos os usuários, coloque-o em / usr / local / bin e possua-o de root com acesso rx por outros sudo chown root:root /usr/local/bin/your_script ; sudo chmod 655 /usr/local/bin/your_script

gksudo gedit ~/.bashrc

Adicione o seguinte ao final de .bashrc e salve:

if [ -d $HOME/bin ]; then
PATH=$PATH:$HOME/bin
fi
    
por oldfred 24.05.2014 / 00:17