Como usar variáveis ​​especiais em Bash

Como usar variáveis ​​especiais em Bash

Neste artigo, estamos destacando o uso de variáveis ​​especiais em Bash. É um arquivo que pode ser usado para processar comandos que podem ser inseridos em uma janela de terminal. Este post inclui vários comandos para execução. A definição de variáveis ​​especiais e seu objetivo será abordada primeiro.

O que são variáveis ​​especiais em Bash?

Variáveis ​​especiais são aquelas cujos significados são predefinidos. Eles são implantados para gerenciar o fluxo de controle do script bash.

Obter seus valores é possível, mas fornecer valores a eles é impossível.

Bash vs Shell

Um software de computador conhecido como "shell" recebe comandos, os interpreta e os envia para o sistema operacional para processamento. A maioria dos sistemas operacionais construídos no Linux tem pelo menos um software de shell. Dash, Bash ou ambos provavelmente serão o aplicativo de shell.

Bash é fácil de usar e menos portátil do que script de shell

O uso de scripts do shell entre os usuários tem maior probabilidade de aumentar quanto mais eles usam Linux. Você deve exortá -los para usar scripts de shell no começo para realizar trabalhos mais fáceis antes de se mudar para o desenvolvimento tradicional quando eles encontrarem uma parede intratável de tijolos. Scripts de shell são uma excelente abordagem para começar a programar, porque são muito fáceis de entender e desenvolver.

Exemplos de variáveis ​​especiais em Bash:

Aqui estão alguns exemplos de variáveis ​​especiais em Bash.

Variável Propósito
-$* Dollar Star, armazena todo o parâmetro em uma única string
-$# São vários argumentos especificados na linha de comando
$ 0 Isso representa o nome do arquivo
$ 1 Representa o primeiro argumento
$ 2 Este é o segundo argumento da linha de comando
$@ É usado para cada string tratada como um argumento separado
$? Isso revela o status de saída do último comando.
$$ Isso dá o ID do processo do shell atual
$! Isso mostra o pid do último trabalho de fundo feito
$ Isso mostra o pid do último trabalho de fundo feito
DO UTILIZADOR O usuário cujo script está sendo executado pelo nome de usuário

Agora, podemos usar alguns dos exemplos de variáveis ​​especiais e ver como podemos executá -las em nossos programas.

Exemplo de $*:

Este exemplo é para todos os níveis de desenvolvedores. Aqui, veremos como e onde podemos usar a variável especial $*

eco "este é o meu" artigo do BASH "; $*

Neste exemplo acima, escrevemos duas frases separadas em citações duplas e, no final desta frase, adicionamos um semi-colon (;) e $*(dólar*). Como resultado, recebemos uma única frase, isso significa que Bash reconhece isso como uma única citação.

Aqui está o resultado:

Este é o meu artigo da minha festa

Exemplo de $ 0:

$ 0 é uma variável especial de Bash que mostra o nome do arquivo do script que está em execução no seu terminal, por exemplo, se digitarmos:

eco $ 0

Então, neste exemplo acima, quando digitamos $ 0, como resultado, obtemos uma saída de principal.sh. Portanto, principal .sh é o nosso nome de arquivo.

principal.sh

Exemplo de $?:

$? é uma variável especial de bash que fornece o código de saída do último comando do terminal. Saber o comando mais recente facilitará o usuário a continuar com seu script.

Então, no código abaixo, se digitarmos “Echo $?”

eco $?”

A saída é dada abaixo:

0 ”

Agora que digitamos $? e se recebemos o resultado de 0 em nosso terminal, isso significava que o programa atual havia sido concluído corretamente. No entanto, se recebemos um resultado de 1 ou mais como (123456789), isso significava que havia um problema de programação, ou recebemos um erro.

Vamos entender a declaração acima com um trenó de código fornecido abaixo.

rm “meu nome de arquivo”

O resultado é mostrado aqui.

0
rm: não posso remover 'meu nome de arquivo
: Não existe tal arquivo ou diretório

Temos 0, mas no próximo código, recebemos um erro (código 1) rm: não é possível remover 'meu nome de arquivo não esse arquivo ou diretório. Portanto, não temos nenhum arquivo chamado "meu nome de arquivo" em nosso diretório, e é por isso que recebemos um erro como [execução completa com o código de saída 0]

Exemplo de $!:

Este $! (Dollar Exclamation) é uma variável especial de Bash que fornece o PID (ID do processo) do trabalho de fundo mais recente feito.

Não podemos atribuir valor a eles, apenas as referências são aceitas para eles.

Vamos examinar a declaração acima em nosso terminal de codificação com o seguinte código:

eco $!

Nosso ID do processo do recente trabalho de fundo pode ser visto na produção como qualquer número que recebamos como resultado. Na saída, ele diz [a execução completa com o código de saída 0].

Exemplo de $-:

O hífen Dollar ($-) é uma variável especial que fornece as bandeiras presentes em uso pelo Bash Shell.

Vamos ver o exemplo e sua saída em nosso terminal.

eco $-

Nosso presente Bash Shell tem as bandeiras -h e -b, disponíveis em nosso terminal

hb

As bandeiras são usadas para configurar opções e argumentos para os comandos que você executa.

Exemplo de $$-:

O $$ retorna o número PID do shell ativo. Independentemente de você empregar uma variável bash específica do prompt de comando Linux ou no script do shell, isso tem efeitos variados. Isso ocorre porque o ID do processo do Active Bash Shell é gerado por $$. No entanto, um novo shell de festa é lançado quando você inicia um novo script.

Vamos usar o seguinte código para testar isso.

eco $$

Na saída dada abaixo, obtivemos 36 como nosso PID.

36

Agora podemos ver o exemplo combinado de variáveis ​​especiais e seus resultados para que possamos entendê -lo em uma interface.

eco “o nome de usuário é: $ user”
eco “o nome do host de computador é: $ hostname”
eco “o número aleatório é $ aleatório”
eco “O ID do processo é: $$”

No snippet, usamos $ user, $ HostingName, $ Random e $$. Como resultado, temos a saída do nome do host, número aleatório e nosso processo de ID (PID), não fornecemos um nome de usuário, por isso não está mostrando nada aos nossos usuários.

O nome de usuário é:
O nome do host do computador é: 169.254.212.113
Número aleatório é 20057
O ID do processo é: 125

Conclusão

Cobrimos scripts bash, inúmeras variáveis ​​especiais de bash, como e onde aplicá -las e como executar programas. Cada uma dessas variáveis ​​é única uma da outra e age de maneira diferente. Além disso, oferecemos exemplos de como usá -los no terminal Bash e fornecer suas sintaxes também, para explicar e fornecer mais clareza aos iniciantes.