O que é $@ em um script bash?

O que é $@ em um script bash?
A maioria de nós usa scripts bash para manutenção e outras tarefas. No entanto, nem sempre estamos familiarizados com as várias opções de bash. Sempre que um usuário é um novato no Bash Shell e Linux, o usuário tende a procurar um script de bash pré-escrito. Isso se deve ao fato de alguns usuários encontrarem os personagens únicos da festa, como $@, $ _ e $ 1 confundindo. Começando com o parâmetro $@ Bash, ele está sendo usado para se estender aos argumentos posicionais. Cada parâmetro se estende a algo como uma palavra distinta sempre que a expansão acontece dentro de duas citações. Parâmetros separados devem ser fechados em citações e distinguidos por um espaço se $@ for usado. Lembre -se de que $@ deve ser citado para funcionar corretamente. No entanto, ele se comporta de maneira semelhante aos argumentos como seqüências distintas.

Estaremos analisando vários exemplos para elaborar a funcionalidade de $@ no script Bash enquanto estiver usando o Ubuntu 20.04 Sistema:

Exemplo 01:

No início, precisamos fazer login no Ubuntu 20.04 Distribuição como usuário sudo. Após o login bem -sucedido, abriremos a linha de comando para começar a trabalhar. Para abri -lo, use “Ctrl+alt+t”. Como alternativa, também podemos usar a área de atividade para encontrar o terminal do console na barra de pesquisa. Depois de abri -lo corretamente, começaremos a trabalhar em $@ em bash, criando um novo arquivo Bash. Então, estamos utilizando o “tocar”Consulta com o nome de um arquivo como“um.sh”. Observe que o arquivo bash contém um “.shExtensão. Bater "Digitar”Depois de escrever as seguintes instruções no shell para executá -lo. Você encontrará o arquivo bash recém -gerado no seu diretório inicial do Ubuntu 20.04:

$ toque um.sh

Agora, o arquivo Bash foi gerado; Temos que abri -lo em um editor para adicionar e editar o script de bash nele. Então, vamos abri -lo usando o “GNU Nano”Editor da concha do terminal. Por isso, usamos o “Nano”Instrução de palavras -chave no shell, juntamente com o nome de um arquivo como“um.sh”Conforme a seguinte imagem:

$ nano um.sh

Você precisa escrever o seguinte script de três frases no seu arquivo Bash “um.sh”. Adicionamos a extensão do BASH no arquivo primeiro. Depois disso, usamos as três declarações de eco neste script para usar os três caracteres especiais e produzir seus respectivos resultados. Observe que o “$#”. O "$@”O caractere é usado para mostrar esses três valores ou parâmetros no terminal, e o“$?”O personagem tem uma tarefa especial para retornar 0 se o último comando for bem -sucedido. Em Bash, o “Ctrl+s”O atalho é frequentemente usado para salvar o arquivo Bash enquanto abre em algum tipo de“Nano" editor. Então, salve o seu.Arquivo SH e deixe -o usando “Ctrl+x”Para devolvê -lo ao terminal:

Agora, o script bash recém -criado foi salvo e protegido em nosso sistema; É hora de torná -lo executável. Você deve observar que o personagem como $@ pega parâmetros de valores dentro do terminal durante a execução de um arquivo. Então, use o “Bash”Consulta de palavras -chave no seu shell ubuntu com o nome de um arquivo“um.shE atribuir valores de parâmetros, conforme declarado. Você pode ver no snap abaixo que fornecemos 3 valores de parâmetros do tipo string ao script Bash um.ela.g., Aqsa, Rimsha e Awan. O resultado da saída está exibindo a saída de 3 linhas. A primeira linha está mostrando o número de parâmetros totais adicionados. A segunda linha está exibindo os valores dos argumentos passados ​​pelo usuário. Por fim, a terceira linha está mostrando 0 como seu valor de retorno porque o comando da segunda linha se tornou bem -sucedido:

$ Bash um.sh arg1 arg2 arg3

Exemplo 02:

Para entender mais o conceito de personagem e funcionalidade $@, precisamos de outro exemplo em nosso artigo. Portanto, abriemos o mesmo arquivo, “um.sh”, Com o editor do GNU Nano. Para isso, tentamos a seguinte instrução e clicamos no botão "Enter" do teclado para continuar:

$ nano um.sh

À medida que o arquivo está aberto agora, estaremos adicionando um novo e atualizado script de bash a ele. Desta vez, estamos usando um script simples para elaborar a função do personagem $@. Então, você deve atualizar seu script bash com o mostrado na imagem abaixo. Estamos usando o loop for para levar um item de cada vez, pois os argumentos passados ​​em $@ por um usuário no terminal. Cada item é exibido no terminal através da declaração de eco. Depois de salvar o arquivo, retornamos ao console para executar o script Bash:

Dentro da instrução Bash, passamos os 5 argumentos do tipo string, juntamente com o nome de um arquivo “um.sh”. Ao atingir o “DigitarChave, o terminal foi exibido com cada argumento separadamente:

$ Bash um.sh arg1 arg2 arg3 arg4 arg5

Exemplo 03:

Vamos dar uma olhada mais de perto em outro mesmo exemplo de $@ como elaborado acima. Neste exemplo, usaremos o $@ e $* para comparar e diferenciar o funcionamento de ambos os personagens especiais. Dessa forma, seremos capazes de entender o funcionamento de $@ personagem corretamente. Para abrir o arquivo já criado “um.sh”, Escreva e execute a seguinte instrução dentro do seu console do Ubuntu 20.04.

$ nano um.sh

Atualizamos o código de exemplo acima. Tudo o que fizemos é adicionar o mesmo código para “$*”Dentro do loop for. Salvamos o código Bash e saímos do arquivo:

Durante a execução, devido ao uso de caráter $*, mostra a primeira linha como todo os parâmetros. Todas as outras linhas são a saída de $@ caracteres:

$ Bash um.sh arg1 arg2 arg3 arg4 arg5

Exemplo 04:

Em nosso último exemplo, explicaremos a funcionalidade do personagem $@ através de funções e loops. Portanto, para atualizar o script Bash, abrimos o arquivo “um.sh"Mais uma vez pelo"Nano”Comando do editor no shell da seguinte forma:

$ nano um.sh

Desta vez, estamos usando o método foo () para imprimir os argumentos passados ​​nos respectivos métodos de caracteres especiais até que não obtenha nada. O método "Dólar1”É para $@ personagem especial e“Dollar2”Para US $* funcionando de personagem. Ambos. Os métodos Dollar1 e Dollar2 são chamados após declarações de eco, enquanto ambos contêm os mesmos três argumentos que seus valores paramétricos:

A execução do código mostra a saída para os métodos Dollar1 e Dollar2 separadamente. O “Usando $@” está mostrando a saída para $@.

$ Bash um.sh

Conclusão:

Este guia descreveu como usar $@ no script Bash, declarar e como funciona. Também descrevemos a diferença entre $@ e outros caracteres relacionados a dólares para torná-lo mais compreensível. Esperamos que você tenha gostado também ao implementá -lo.