Olá, amigos estudantes!
Estava até animado com a aula em que aprendemos a criar funções no Bash.
Olha, por um momento achei tudo bem familiar parecido com JavaScript.
Afinal, definir uma função com function nome() { }
parecia um velho conhecido...
E pensei: “Ah, é só colocar os parâmetros dentro dos parênteses e seguir o baile!”
Confiante, né? Quase me vi dizendo: "Bora pra cima que essa parte eu já domino!"
Mas aí... vem o Linux. E como tudo nele, se não complicar, não seria Linux.
Primeira surpresa: no Bash, os parênteses na definição até aparecem, mas na hora de chamar a função... cadê os parênteses?
Isso mesmo: você chama uma função como se estivesse chamando uma variável.
Confunde? Confunde. Mas a gente segue.
E sobre passar parâmetros?
Aí é outro universo!
Esqueça os nomes bonitinhos entre parênteses separados por vírgula.
Aqui, os parâmetros chegam de forma misteriosa, através de $1
, $2
, $3
... e por aí vai.
Parece até um jogo de adivinhação no começo.
Mas, como tudo na vida, com o tempo a gente se acostuma.
Exemplo rápido pra descomplicar:
minha_funcao() {
echo "Olá, $1!"
}
minha_funcao "Mundo"
Saída:
Olá, Mundo!
Simples assim! Sem parênteses na chamada, sem cerimônia.
A função só quer ser chamada e fazer seu trabalho.
Enfim, o show não pode parar.
Cada linguagem tem seu jeitinho, e o Bash tem esse charme rústico que a gente aprende a amar (ou pelo menos a respeitar ^^´).
Bons estudos a todos e até a próxima linha de código!
E comente ai sua opinião.
Até...
:)