Não perca as ofertas por tempo limitado!
Voltar
In this article

Comandos Bash Linux – guia básico e exemplos de uso

Comandos Bash Linux – guia básico e exemplos de uso

O bash é uma das famosas ferramentas de script do Unix e ideal para usuários Linux e administradores de Sistema. Seu nome é uma abreviação de Bourne Again Shell. Neste tutorial você vai aprender como utilizar alguns dos comandos bash Linux.

O Unix possui 2 categoriais principais de shell.

  • Bourne-type shell
  • C shell

Bourne shell também é classificada como:

  • Korn shell (ksh)
  • Bourne shell (sh)
  • POSIX shell (sh)
  • Bourne Again shell (bash)

C shell é classificada como:

  • C shell (csh)
  • TENEX (TOPS) C shell (tcsh)

Scripts bash são bastante poderosos e componentes importantes para desenvolvimento. Eles podem diminuir tarefas simples e repetitivas em uma única linha de função. Diversos comandos longos podem ser consolidados em códigos executáveis únicos.

O bash está disponível em praticamente todas as distribuições Linux e não exige nenhuma instalação a parte. A lista de shells disponíveis pode ser verificada executando o seguinte comando:

cat /etc/shells

O resultado será algo como o exemplo abaixo:

/bin/bash
/bin/sh
/bin/tcsh
/bin/csh

Por Que Usar Funções Bash Linux?

Funções bash podem:

  • Eliminar tarefas repetitivas.
  • Economizar tempo.
  • Oferece uma sequência de atividades bem estruturadas, modulares e formatadas.
  • Com funções, podemos oferecer valores dinâmicos a comandos usando comandos de argumento.
  • Simplifica argumentos complexos em um único comando.
  • Uma vez criado, pode ser executado inúmeras vezes por qualquer pessoa.
  • Linhas de lógica podem ser criadas com funções bash.
  • Os comandos bash podem ser executados na inicialização do servidor ou com a ajuda de tarefas cron.
  • Os comandos podem passar por debug.
  • Podem ter comandos shell interativos.

O bash é, definitivamente, uma ótima ferramenta para facilitar o seu fluxo de trabalho e melhorar seu projeto. Suas possibilidades de uso são praticamente infinitas, então, neste tutorial iremos ensinar apenas o básico. Está pronto para seu primeiro script?

Começando com o Comando Bash

Antes de começar, você precisará usar o SSH e se conectar com o servidor VPS.

Para começarmos com opções de comando básicas, você pode conferir o manual do bash com o comando:

man bash

Em seguida, iremos criar o arquivo com extensão .sh. Para isso, iremos utilizar o Editor VIM. Criamos um novo arquivo com o seguinte comando:

vim sampleFunction.sh

O arquivo .sh será aberto e iremos editá-lo.

Cada script bash deverá começar com os seguintes caracteres:

#!/bin/bash

O comando abaixo exibe o caminho do script bash.

which bash

O resultado será parecido com este:

/bin/bash

A sintaxe básica do bash é:

function functionName {
first command
second command
}

Também pode ser escrito como:

functionName (){
first command
second command
}

Em uma única linha fica escrito assim:

functionName() { first command; second command; }
caca

Um exemplo de tal função está demonstrado abaixo, quando criamos um diretório e mudamos o caminho para apontar para o novo diretório:

sampleFunction () {
mkdir -p $1
cd $1
}

$1 significa a variável sendo inserida na função. O bash pode criar variáveis dinâmicas dentro do comando. Para verificar esta função, execute:

sampleFunction myDir

Neste caso, o myDir é o nome de um diretório válido a ser criado. Se você verificar o diretório em que se encontra atualmente com o comando pwd, irá notar que está dentro do novo diretório myDir.

Da mesma maneira, qualquer comando comumente utilizado por ser adicionado como uma função bash.

Lembre-se, quando tiver terminado de usar o editor VIM para editar seu arquivo .sh, você pode salvar e fechar o arquivo apertando ESC para entrar em modo de comando e então digitar :wq para salvar e sair.

Funções Bash Básicas

Um dos exemplos básicos de uma função bash está destacado abaixo:

#!/bin/bash
testfunction(){
echo "My first function"
}
testfunction

Se você salvar este script em testFunction.sh e executá-lo como ./testFunction.sh, então você vai ver o resultado:

My first function

A função Echo exibe o resultado no console. Se você mudar a posição da definição de função com o calling, então o resultado vai ser um erro. O snippet abaixo irá gerar um erro.

#!/bin/bash
testfunction
testfunction(){
echo "My first function"
}

Então, primeiro é preciso definir a função e então invocá-la.

Funções bash podem aceitar qualquer número de parâmetros. O exemplo abaixo aceita dois parâmetros:

#!/bin/bash
testfunction(){
echo $1
echo $2
}
testfunction "Hello" "World"

Você também pode utilizar a input interativa e performar funções bash, como mostrado abaixo:

#!/bin/bash
addition(){
sum=$(($1+$2))
return $sum
}
read -p "Enter a number: " int1
read -p "Enter a number: " int2
add $int1 $int2
echo "The result is : " $?

No exemplo acima, o valor da adição está designado em uma soma de variáveis, e isto é retornado da função. Inputs interativas são usadas utilizando read para ambos os números. Finalmente, o resultado é exibido utilizando $? que armazena o valor retornado de $sum da função.

Funções bash sempre retornam um único valor.

Você pode deixar comentários dentro do arquivo adicionando o símbolo # para deixar notas de ajuda.

Scripts bash suportam:

  • Loop While
  • Loop For
  • Instrução If
  • Lógica And
  • Lógica Or
  • Instrução Else If
  • Instrução Case

Abaixo é um exemplo curto do loop While.

#!/bin/bash
isvalid=true
count=1
while [ $isvalid ]
do
echo $count
if [ $count -eq 5 ];
then
break
fi
((count++))
done

O exemplo acima utiliza as instruções while e if. Isso executa o loop while 5 vezes antes de sair depois de checar a instrução condicional if.

O resultado será:

1
2
3
4
5

O loop For pode ser usado para incrementar assim como agravar os contadores. Um exemplo do loop for está mostrado abaixo:

#!/bin/bash
for (( count=10; count>0; count-- ))
do
echo -n "$count "
done

O resultado deste loop será:

10 9 8 7 6 5 4 3 2 1

No bash, os símbolos && representam a lógica AND, enquanto que || representam a lógica OR.

Com instruções if, também podemos definir Else if. Veja abaixo:

#!/bin/bash
echo "Enter a valid number"
read n
if [ $n -eq 101 ];
then
echo "This is first number"
elif [ $n -eq 510 ];
then
echo " This is second number "
elif [ $n -eq 999 ];
then
echo " This is third number "
else
echo "No numbers over here"
fi

Este mesmo exemplo também pode ser escrito com a instrução case:

#!/bin/bash
echo " Enter a valid number"
read n
case $n in
101)
Echo " This is the first number " ;;
510)
echo " This is the second number " ;;
999)
echo " This is the third number " ;;
*)
echo " No numbers over here " ;;
esac

Em instruções case, ;; significa o término do case.

Resumo

Isto completa nossa revisão dos comandos bash básicos. O bash é uma ferramenta extremamente poderosa e fácil de ser aprendida. Deste ponto você pode mergulhar fundo na criação de mais exemplos e se divertir explorando o potencial máximo dos comandos bash Linux!

Semua konten tutorial di website ini telah melalui peninjauan menyeluruh sesuai padrões editoriais e valores da Hostinger.

Author
O autor

Ariane G.

A Ariane é SEO Team Leader com experiência em conteúdo, localização e SEO. Seu desafio é levar a Hostinger ao topo dos resultados no Brasil, França e Reino Unido. Eventualmente ela compartilha seu conhecimento no blog e nos tutoriais da Hostinger e no tempo livre ela gosta de explorar lugares novos e viver intencionalmente.

O que dizem nossos clientes

Comentários

Author
Paulo Riceli

May 05 2021

Parabéns! Mas gostaria de acrescentar se definidas e usadas em um mesmo arquivo as funções servem para modularizar a solução. Para reaproveitar uma rotina indico o comando source e/ou seu aliase ".". Eles incluem fonte contido em outro arquivo.

Author
Felix Jaime

September 25 2021

Gostei do bash

Deixe uma resposta

Por gentileza, preencha os campos solicitados.Marque o campo de aceitação da privacidade.Preencha os campos necessários e marque a opção de aceitar termos de privacidade.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Thank you! Your comment has been successfully submitted. It will be approved within the next 24 hours.