Como usar variáveis ​​em bash

Como usar variáveis ​​em bash
Para aqueles que já executaram algumas tarefas de programação antes, estarão familiarizadas com as variáveis. Mas, para aqueles que não têm conhecimento de programação, as variáveis ​​são usadas para armazenar temporariamente uma informação. As variáveis ​​são definidas em um programa para armazenar tipos específicos de dados como número inteiro, flutuação e strings. Como sabemos que Bash é uma linguagem fracamente digitada na qual as variáveis ​​não estão vinculadas a um tipo de dados específico, portanto, não há necessidade de definir qualquer tipo de dados para a variável no tempo de declaração. Se atribuirmos um valor numérico a uma variável, ele o levará como um número inteiro e, no caso de um valor de texto, ele se comportará como uma string. No script bash, variáveis ​​que podem ser definidas em um arquivo bash ou no terminal são usadas para gerenciar e controlar as ações de todo o programa Bash. Variáveis ​​são muito fáceis de usar, mas, se você não tiver um entendimento adequado de como elas funcionam, você pode facilmente ter problemas.

Neste artigo, discutiremos uma variedade de métodos diferentes pelos quais podemos entender como criar e usar variáveis ​​em um script de bash. Executamos exemplos diferentes relacionados a variáveis ​​no Ubuntu 20.04 Distribuição do Linux. Vamos começar a demonstração.

Como funcionam as variáveis?

Como mencionamos acima, uma variável é um armazenamento temporário para uma informação.
As duas ações a seguir, você pode executar enquanto estiver usando uma variável em um script bash:

  • Defina um valor particular para uma variável.
  • Leia o valor para uma variável.

Você pode valorizar variáveis ​​usando maneiras diferentes. O mais comum é definir diretamente um valor como uma variável ou você pode definir seu valor como resultado do processamento de comando ou um programa.
Lendo uma variável, precisamos colocar seu nome com o sinal $ no início dessa variável que você pode querer ler. Antes de executar todas as linhas de um script bash, primeiro, ele verifica se algum nomes de variáveis ​​está presente. Ele encontra cada variável e substitui seu valor pelo nome da variável. Em seguida, inicia a execução de uma linha específica de código e repete o processo para a próxima linha.

Há alguns pontos importantes na sintaxe que você precisa seguir ao ler uma variável:

  • Não use nenhum caractere especial ou signo $ enquanto defina um valor variável
  • Ao ler uma variável, coloque um sinal de $ no início do nome da variável
  • Alguns programadores escrevem nomes de variáveis ​​em todas as maiúsculas, mas podemos atribuir nomes de acordo com nossa preferência. Eles podem ser todos maiúsculos, minúsculos ou uma mistura de ambos.

Você pode definir e ler dados de uma variável através do terminal da seguinte maneira: primeiro, você precisa abrir o aplicativo de terminal em seu sistema. Abra o terminal usando o atalho do teclado pressionando 'Ctrl + Alt + T'. Ou você pode abri -lo através da barra de pesquisa do lançador de aplicativos. Clique em 'Atividades' e depois digite 'Terminal' na barra de pesquisa que será exibida na área de trabalho e pressione 'Enter'. Você verá a seguinte saída na tela do seu terminal. Clique no ícone do terminal e inicie -o.

A sintaxe básica da declaração variável; Definindo o valor variável

Como discutimos anteriormente em Bash, não precisamos definir o tipo de variável quando você declarar uma variável. Você não precisa declarar uma variável. Basta atribuir um valor a uma variável para fazer referência a ele.

variable_name = value

Por exemplo, queremos atribuir um valor como a string 'Welcome to Bash Programming: Uso de variáveis' a uma variável chamada 'var_str'. Usando o seguinte comando, você pode fazer esta tarefa:

var_str = "Welcome to Bash Programming: Uso de variáveis"

Ao contrário da maioria das outras linguagens de programação modernas, o Bash oferece uma sintaxe exigente para definir variáveis. Você deve estar ciente de que não há necessidade de adicionar espaço em branco entre o nome da variável, o mesmo símbolo e o valor que você deseja atribuir. Caso contrário, ele lançará uma mensagem de erro.

my_var = "diga olá"

No comando acima, você receberá um erro devido ao espaço em branco após o sinal igual e o valor atribuído.

Exemplo: declaração e leitura de uma string usando variável

Vamos dar um exemplo no qual armazenaremos uma string "Regras: como usar uma variável em Bash" e, em seguida, o valor da variável é recuperado através do comando Echo, anexando o sinal de '$' no início do nome da variável. O comando a seguir que você precisa seguir para exibir uma string no terminal:

$ my_var = "Regras: como usar a variável em bash"
$ echo $ my_var

Você verá a seguinte saída na janela do terminal:

Se você não usar o sinal '$', a saída do programa mostrará resultados diferentes e você pode não obter a saída necessária. Vamos mostrar o seguinte exemplo:

$ my_var = "Regras: como usar uma variável em bash"
$ echo my_var

No comando acima, o sinal '$' é removido com o nome da variável 'eco my_var'. Então, você recuperará apenas o nome da variável na saída.

Nomes de variáveis ​​válidos

Você pode atribuir nomes de variáveis ​​sublinhados e sequências de caracteres alfanuméricos.
O nome da variável deve começar com caracteres alfanuméricos ou sublinhados. Não deve ser iniciado com um número ou dígito.

Exemplos de nomes de variáveis

  • olá
  • N4
  • número_my_array
  • _num

Combinando duas variáveis ​​Saída

Você não precisa usar nenhum operador para combinar duas ou mais variáveis ​​em saída, como outros idiomas.

Exemplo

Por exemplo, aqui estamos usando um $ var1 no qual o valor da string a ser armazenado e $ var2 é usado para armazenar qualquer número inteiro ou um valor numérico. Execute os seguintes comandos no terminal que combinarão a saída VAR1 e VAR2.

$ var1 = "O preço da casa é $"
$ var2 = 50
$ echo $ var1 $ var2

A saída a seguir será mostrada no terminal após a execução dos comandos mencionados acima:

Nota importante:

A saída pode ser impressa sem usar nenhuma cotação, mas, se você quiser usar citações, só você precisa usar citações duplas.

Concatenando duas variáveis

Citações duplas são usadas para ler o valor da variável em Bash.

Exemplo

Vamos dar um exemplo da concatenação de duas variáveis. Usamos citações duplas para uma declaração de eco e uma única citação para outra declaração de eco. Executamos os seguintes comandos no terminal que você pode verificar a saída abaixo mencionada:

$ var = "concatenação variável em"
$ echo "$ var programation"
$ echo '$ var programation'

Na captura de tela acima, você pode observar que, quando tiver usado as citações duplas com o comando ECHO, ele lê o valor da variável. No caso de uma única cotação, não é capaz de ler o valor variável.

Faça operações aritméticas usando variáveis

Na programação de bash, podemos realizar diferentes tarefas aritméticas, como outras linguagens de programação. São necessários valores numéricos ou números inteiros como strings. No entanto, você não pode realizar nenhuma operação aritmética usando apenas expressões simples normais. Combina apenas os valores numéricos nesse caso. Usando os suportes duplos de partida e final com a expressão, você pode fazer as operações aritméticas.

Exemplo

Por exemplo, temos uma variável n na qual 50 valores numéricos são armazenados. Queremos adicionar mais 20 na variável, usando o seguinte comando, você pode executar esta operação:

$ n = 50
$ echo $ n
$ echo $ n+20
$ ((n = n+20))
$ echo $ n

No comando acima, você viu $ n+20 comando apenas combinar dois valores. Não lhe dá a saída desejada. Ao adicionar colchetes iniciais ((n = n+20)), você realizou a operação aritmética com resultado 70.

Faça operação aritmética usando o comando BC

O outro método para fazer operações aritméticas é o uso do comando BC em Bash.

Exemplo

Usando os seguintes comandos no terminal, você pode executar tarefas aritméticas:

$ n = 65
$ echo $ n/10 | bc

No código acima, você pode ver que, quando tiver usado o comando bc para fazer a divisão de operação aritmética, ele omitiu as partes fracionárias do resultado.

$ n = 65
$ echo $ n/10 | bc -l

Quando você usou a opção -l com o comando BS, você também obtém o valor fracionário como resultado.

Uso de variáveis ​​em um arquivo de script de bash

Você também pode inicializar uma variável em um script bash usando o mesmo método mencionado nos exemplos acima. No entanto, você precisa criar um arquivo de script bash. Para fazer isso, crie um arquivo usando um editor de texto e cole o seguinte código. Agora, salve com .bash ou .Extensão SH.

Exemplo

No script a seguir, declaramos duas variáveis ​​uma é uma corda e a outra tem valores numéricos. Queremos subtrair 10 do número determinado. Execute o seguinte script para esse fim:

#!/BIN/BASH
Str = "Como usar variáveis ​​no script de bash"
# Valor da string de exibição
eco $ str
num = 100
# Subtraia 10 valores numéricos de uma variável num = 100
((resultado = $ num-10))
# Exiba a saída numérica
eco $ resultado

Você verá a seguinte saída no terminal:

Uso de variáveis ​​locais e globais

Como outras linguagens de programação, você pode definir variáveis ​​locais e globais na programação do Bash. Vamos elaborar o conceito de variáveis ​​locais e globais com um exemplo.

Exemplo

Por exemplo, no script Bash a seguir, usamos variáveis ​​locais e globais. O script a seguir possui uma variável global chamada 'num' e duas variáveis ​​locais são usadas denominadas 'num' e 'm'.

Queremos adicionar dois valores variáveis ​​usando uma adição de função (). Quando essa função chamará o valor da variável local 'num' é tomada para cálculo, mas o número que é uma variável global permanece inalterado. Quando declararemos variáveis ​​locais, precisamos usar uma palavra -chave local com o nome da variável.

#!/BIN/BASH
num = 10
adição de função ()

Num local = 10
M local M = 10
((num = num+m))
eco $ num

Adição
eco $ num

Execute o script acima usando o seguinte comando:

$ Bash addfun.sh

A saída a seguir será exibida no terminal após a execução do script acima:

Como usar variáveis ​​de matriz em Bash

Matrizes são usadas para armazenar a lista de dados. Portanto, no script Bash, também podemos usar variáveis ​​de matriz para armazenar dados.

Exemplo

Vamos dar um exemplo que mostrará como usar variáveis ​​de matriz no script de bash. Os elementos dos matrizes são separados por especificações na programação de bash. Aqui, pegamos uma variedade de 5 elementos. Não temos nenhuma função predefinida para contar os elementos da matriz total. Em Bash, # com * ou '@' é usado para contar o número total de elementos da matriz. Todos os elementos da matriz são indicados por * sinal. Usamos um loop para iterar dentro dos elementos da matriz. Em seguida, o script lerá os valores da matriz e com uma chave e imprimirá a saída no terminal.

#!/BIN/BASH
my_arr = (Centos Ubuntu Debian Linux Mint Solaris MacOS Windows)
# conte o número total de elementos em uma matriz
total = $ #my_arr [*]
eco "os elementos totais da matriz são: $ total"
#Display Valor de cada elemento de uma matriz
eco "Valores dos elementos da matriz:"
para val em $ my_arr [*]
fazer
printf " %s \ n" $ val
feito
#Display o valor de cada elemento de cada matriz com uma chave
eco "Valores dos elementos da matriz com chave:"
Para chave em $ !my_arr [*]
fazer
printf " %4d: %s \ n" $ key $ my_arr [$ key]
feito

A saída a seguir será exibida no terminal:

Estamos resumindo um ponto -chave importante sobre as variáveis ​​na programação do Bash:

  • Declaração variável
variable_name = value

Enquanto define um valor para uma variável. Você deve se lembrar que não há necessidade de adicionar espaços em ambos os lados do = sinal.

  • Citações ”'
  • Use citações duplas para substituição variável, você não usará uma única cotação para ler uma variável.
  • Use ((n = n+10)) Use colchetes iniciais para operações aritméticas ou você pode usar o comando BC.
  • Elementos da Array que você pode contar usando # com * sinal.

Conclusão

Neste artigo, explicamos um conceito claro sobre variáveis ​​de bash que como podemos declarar e ler valores de variáveis ​​na programação do bash. Se você exercer os exemplos acima mencionados, poderá lidar com variáveis ​​com mais eficiência em scripts bash. Nós executamos vários comandos no terminal e também executamos em um script de bash. Os comandos bash na linha de comando funcionam exatamente da mesma forma que em um script bash, mas quando você tem um grande código, pode gerenciá -lo em um arquivo de script, em vez de executar um por um no terminal.