Para criar código eficiente, as funções Bash são usadas em scripts de shell. Em essência, estes são um conjunto de instruções que podem ser usadas novamente ao longo do programa. Além disso, permite que os programadores dividam scripts longos e complexos em pedaços gerenciáveis que podem ser invocados conforme necessário. Neste artigo, examinaremos como passar um argumento para uma função bash para construir uma função com um argumento. O parâmetro pode ser uma string, um número inteiro ou algo diferente. Diferentes métodos de envio de argumentos para as funções Bash serão usados neste artigo.
Passando argumento para a função Bash
Nesta seção, mostraremos como fornecer um argumento para uma função Bash no Linux. Mas primeiro, demonstraremos como criar uma função no Bash. O uso de funções no script de bash é uma maneira fantástica de reutilizar o conteúdo. Um grupo de comandos que podem ser chamados repetidamente dentro de um script bash pode ser referido como um módulo Bash. As funções em Bash estão lá para facilitar seus programas e impedi -lo de entrar no mesmo script repetidamente.
Para escrever o programa, usaremos o Bash Shell, que é “#!/BIN/BASH.”Então, na linha a seguir, definiremos uma função essencialmente definida pelo usuário, por isso daremos o nome de nossa escolha. Aqui, nomearemos a função "func" e usaremos os colchetes redondos "()" que sabemos que são usados com funções. Em seguida, usaremos suportes encaracolados dentro desses colchetes. Usamos o comando "Echo" para imprimir a afirmação que contém o texto "Eu amo meu país" e porque esta afirmação está incorporada na função, ela será exibida na saída quando a função for chamada. A função agora será chamada no final do script. Basta entrar no nome do método "func" sem parênteses para realizar isso.
#!/BIN/BASH
func ()
eco “eu amo meu país”
functão
O comando para exibir a saída de um script bash no terminal agora será inserido no terminal. Para fazer isso, primeiro entraremos na palavra -chave “Bash” seguida por um espaço, depois o nome do script Bash, “FileBash.sh ”.
Linux@Linux: ~/Desktop $ Bash FileBash.sh
A string que usamos dentro da função "func" e queria exibir na tela depois de chamar a função será exibida quando executarmos este comando. Como você pode ver, a frase "eu amo meu país" é exibida na imagem abaixo.
Agora, na seção a seguir, daremos um argumento para a função Bash. Para fazer isso, construiremos um script no Bash no qual primeiro adicionamos o shell, como fizemos anteriormente e depois definirmos uma função com o nome "func1 ()", seguido de colchetes encaracolados. O corpo da função está localizado dentro dos colchetes encaracolados. Portanto, dentro do corpo da função, usamos o comando "echo" para imprimir o nome da função "func1" e passamos o parâmetro Bash "$ 1". Depois de sair do corpo da função, chamamos isso na linha a seguir e passamos a string "Goodluck" como um argumento. Esta string é mantida na variável "$ 1".
#!/BIN/BASH
func1 ()
eco “func1 $ 1”
func1 "Goodluck"
A saída do script é então exibida no terminal digitando o mesmo comando que também é utilizado na etapa anterior.
Linux@Linux: ~/Desktop $ Bash FileBash.sh
Como você pode ver na imagem abaixo, quando executamos este comando, ela exibiu uma declaração que incluía o nome da função "func1", bem como a string "Goodluck" que tínhamos fornecido como um argumento à função Bash. Será salvo no parâmetro "$ 1".
Passando vários argumentos para a função Bash
Embora esta seção seja semelhante à anterior, passaremos vários parâmetros aqui, em vez de um único argumento na seção anterior. Para isso, vamos desenvolver um script no qual primeiro adicionemos o shell da festa, que é “#!/BIN/BASH, ”. Em seguida, defina uma função com o nome "user_function ()", seguido pelo corpo da função, que é criado usando colchetes encaracolados. Entre esses colchetes, seguimos as etapas idênticas, como na seção anterior, inserindo a declaração "user_function", que é o nome da função e os parâmetros "$ 1", "$ 2", "$ 3" e "$ 4" com o Comando "Echo".
Então, na etapa a seguir, chamaremos a função com os argumentos usando o nome da função, "user_function", bem como as quatro cordas que compõem o argumento: "eu", "amor", "meu" e "país". As cordas devem ser escritas com vírgulas invertidas. Os parâmetros para Bash serão substituídos por essas seqüências que fornecemos como argumentos. A primeira string será armazenada em "$ 1", a segunda em "$ 2", a terceira em "$ 3" e a quarta em "$ 4".
#!/BIN/BASH
user_function ()
echo “user_function $ 1 $ 2 $ 3 $ 4”
user_function “i” “amor” “meu” “país”
Agora, vamos usar o comando para abrir o script Bash no terminal, digitando primeiro "Bash" e depois o nome do script, "FileBash.sh ”.
Linux@Linux: ~/Desktop $ Bash FileBash.sh
Você pode ver na imagem abaixo que, quando o comando é executado com sucesso, ele exibe o nome da função, "função do usuário", bem como a string "Eu amo meu país", que abastecemos como argumento na função Bash.
Usando o método de divisão na função Bash com um argumento inteiro
Nesta seção, dividiremos um número inteiro usando um script e enviará o resultado como entrada para a função. Para conseguir isso, escreveremos um script no qual primeiro adicionamos o shell da festa como fizemos na etapa anterior. Em seguida, defina a função "User function ()" e use suportes encaracolados, dentro dos quais definimos a variável "div" e armazenamos a operação de divisão usando o sinal de dólar "$.”Em seguida, usamos suportes redondos duplos dentro dos quais usamos dois parâmetros,“ $ 1 ”e“ $ 2 ”e entre esses dois parâmetros, inserimos o operador da divisão para executar a divisão.
Em seguida, usamos o comando "Echo" na linha a seguir, passando a declaração de entrada "Dividindo 60 por 10 é", bem como o argumento "div" com o valor "$" porque a resposta da divisão é armazenada nele. Os valores que usamos na divisão, "60" e "10", serão aprovados como argumentos para a função quando chamamos de uso da função "user_define.”
#!/BIN/BASH
user_function ()
div = $ (($ 1 / $ 2))
eco “Dividindo 60 por 10 é: $ div”
user_function 60 10
O comando a seguir deve ser usado para exibir o resultado na tela como a etapa subsequente.
Linux@Linux: ~/Desktop $ Bash FileBash.sh
Você pode ver o resultado da divisão mostrado quando executamos este comando. O resultado é "6", como mostrado pela declaração, que afirma "a divisão 60 por 10 é: 6.”
Conclusão
Este artigo discutiu como escrever uma função Bash no Linux que leva argumentos. Em uma função bash, várias técnicas para enviar argumentos foram definidas. Na primeira seção deste artigo, abordamos como escrever um script em Bash e construir uma função, bem como fornecer um único argumento a uma função. Os numerosos parâmetros são fornecidos a uma função bash no segundo tempo, e o argumento inteiro é aprovado na última seção para executar a divisão.