O shell script é uma linguagem de script poderosa e flexível que permite automatizar tarefas no sistema operacional. Uma das características mais úteis do shell script é a capacidade de fazer substituições de parâmetros. Neste artigo, vamos explorar as substituições de parâmetros e como podemos usar valores padrão no shell script.
Substituições de parâmetros
As substituições de parâmetros permitem que você manipule e acesse os valores dos parâmetros passados para o seu script. Existem várias formas de substituições de parâmetros, mas vamos nos concentrar nas mais comuns.
Substituição de parâmetro posicional
Quando você executa um script shell e passa argumentos para ele, você pode acessar esses argumentos usando a substituição de parâmetro posicional. Os argumentos são numerados a partir de 1 e podem ser acessados usando a sintaxe $1
, $2
, etc.
Por exemplo, se você executar o seguinte comando:
./meu_script.sh arg1 arg2
Você pode acessar os argumentos dentro do script da seguinte forma:
echo $1 # imprime 'arg1'
echo $2 # imprime 'arg2'
Substituição de parâmetro padrão
A substituição de parâmetro padrão permite que você defina um valor padrão para um parâmetro caso ele não tenha sido passado para o seu script. Isso é especialmente útil quando você precisa de um valor padrão para um argumento opcional.
Você pode usar a sintaxe ${variavel:-valor_padrao}
para fazer a substituição de parâmetro padrão. Se a variável estiver vazia ou não definida, o valor padrão será usado.
Por exemplo:
#!/bin/bash
nome=$1
saudacao=${2:-'Olá'}
echo "$saudacao, $nome!"
Se você executar o script sem passar o segundo argumento, ele usará o valor padrão ‘Olá’:
./meu_script.sh João
# saída: Olá, João!
Substituição de parâmetro padrão com valor nulo
Em alguns casos, você pode querer definir um valor padrão mesmo que a variável tenha sido definida, mas esteja vazia. Para isso, você pode usar a sintaxe ${variavel:=valor_padrao}
.
Por exemplo:
#!/bin/bash
nome=''
saudacao=${nome:='Olá'}
echo "$saudacao, $nome!"
Neste caso, mesmo que a variável ‘nome’ esteja vazia, o valor padrão ‘Olá’ será usado:
./meu_script.sh
# saída: Olá, !
Conclusão
As substituições de parâmetros são uma ferramenta poderosa no shell script. Elas permitem que você manipule e acesse os valores dos parâmetros passados para o seu script. Além disso, as substituições de parâmetros padrão são especialmente úteis para lidar com argumentos opcionais e definir valores padrão.