Escolar Documentos
Profissional Documentos
Cultura Documentos
Comandos Bash Linux
Comandos Bash Linux
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.
Bourne-type shell
C shell
C shell (csh)
TENEX (TOPS) C shell (tcsh)
cat /etc/shells
/bin/bash
/bin/sh
/bin/tcsh
/bin/csh
Conteúdo
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?
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
#!/bin/bash
which bash
/bin/bash
functionName (){
first command
second command
}
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.
#!/bin/bash
testfunction(){
echo "My first function"
}
testfunction
#!/bin/bash
testfunction
testfunction(){
echo "My first function"
}
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.
Você pode deixar comentários dentro do arquivo adicionando o símbolo # para deixar
notas de ajuda.
Loop While
Loop For
Instrução If
Lógica And
Lógica Or
Instrução Else If
Instrução Case
#!/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
10 9 8 7 6 5 4 3 2 1
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
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!