Programando em Shell Script no Linux, introdução a essa simples e poderosa linguagem

Programar em Shell Script proporciona maior flexibilidade ao administrar e operar um sistema Linux em tarefas relacionadas a redes, administração de servidores Linux, programação e ambientes dos usuários.

Porém o shell script não serve apenas para executar comandos. Com ele você também pode utilizar funções de programação.

O script é um arquivo de texto com a extensão “.sh” que permite programar comandos em cadeia que serão executados como script pelo sistema, semelhante aos arquivos .bat do Windows. Com ele você pode até mesmo fazer substituição de comandos.

Quem conhece a linha de comando não precisa aprender nenhuma outra linguagem de programação para aprender shell script, mas é recomendável conhecer pelo menos o básico de algoritmo e lógica de programação. Quem já sabe programar em alguma linguagem não terá maiores dificuldades em começar a aprender.

Exemplo de utilização de Shell Script

No exemplo será utilizado o shell bash que a maioria das distribuições Linux utiliza de forma nativa. Veja a seguir como fazer o famoso “Hello World” em shell script:

#!/bin/bash

# Meu primeiro script

echo “Hello World!”

Após digitar o texto, você deve salvar o script com a extensão .sh

Ao criar um script é preciso se atentar a algumas regras:

  • O script pode ser executado digitando “sh ./nome_do_script.sh”, “./nome_do_script.sh” ou “bash /caminho_completo/nome_do_script.sh”
  • Todo script deve começar com “#!/bin/bash”
  • Cada linha é um novo comando
  • Linhas de comentário devem começar com um #
  • O comando echo serve para exibir um texto na tela

Curiosidades

Se você está interessado em aprender mais, comente abaixo que eu prendo fazer uma série de vídeos sobre shell script.

  • Roger Ribeiro

    Mandar ver nesse curso!

  • Carlos Eftj

    Tem como abrir um scropt com “2 cliques” como um *.bat? Uso ubuntu, só que aqui está como opção padrão abrir com o GEDIT, pode me ajudar?

  • Afonso Snow

    Tristão, vim aqui achando que iria encontrar o material em sua quase totalidade, achei somente um $echo “Olá mundo”
    Toca esse curso ai, tenho sede de shell.