Entendendo e escrevendo 'Variáveis Linux' em scripts de shell - Parte 10
- 4456
- 1020
- Leroy Lebsack
A linguagem Linux Shell Script sempre foi um tópico quente e sempre estará no futuro. A linguagem de script de shell é mágica e é tão fácil fazer um programa na linguagem de script como em qualquer outro idioma. No entanto, ele precisa de um conhecimento profundo do que estamos fazendo e qual é o resultado esperado.
Entendendo variáveis em scripts de shellTodos os artigos de script de shell que escrevemos para nossos leitores são muito apreciados, incluindo o último "um insight de variáveis Linux". Estamos estendendo o último artigo a um novo nível.
Atributos variáveis
Cada variável no ambiente Linux tem certas opções e são chamadas de 'atributos'. Essas opções ou atributos podem ser transformados Sobre e Desligado, Quando necessário de acordo com a situação usando um comando "declarar".
Um exemplo de atributo variável está usando um interruptor, digamos '-eu'que ativará o atributo inteiro para a variável correspondente. Mesmo que um valor não numérico seja passado para mudar '-eu'Não vai lançar uma mensagem de erro e saída'0'Como interpretação inteira. Aqui fica mais claro no exemplo abaixo.
Declare um número inteiro variável, Bill = 121
[Email Protected]: ~ $ declarar -i Bill = 121
Printf o valor da conta variável.
[Email protegido]: ~ $ printf "%d \ n" "$ bill" 121
Deixe o valor variável ser uma string. A conta variável já foi declarada, não há necessidade de declarar a segunda vez. Basta alterar o valor da variável como.
[Email protegido]: ~ $ Bill = Tecmint
Agora, de novo imprima o valor da conta variável.
[Email Protected]: ~ $ printf "%d \ n" "$ Bill" 0
Perceber '0'No local da mensagem de erro.
Agora, a questão é: como saber os atributos de variáveis já declaradas?
[Email Protected]: ~ $ declarar -P Bill declarar -i Bill = "121"
Aqui um -p (Stands for Print) Switch vem para resgatar.
Novamente, o que devo fazer para desligar os atributos de uma variável?
Para mudar Desligado os atributos de uma variável o que precisamos é para colocar um + (mais) Assine logo antes do interruptor. Aqui está mais claro no exemplo abaixo.
Trocar Desligado o atributo inteiro para a variável acima.
[Email Protected]: ~ $ declarar +Bill I Bill
Verifique o valor da variável.
[Email Protected]: ~ $ printf "%d \ n" "$ bill" BASH: printf: Bill: Número inválido 0
Agora imprima o valor da variável usando string de switch.
[Email Protected]: ~ $ printf "%s \ n" "$ Bill" Tecmint
Aqui no exemplo acima, Bash não pôde julgar o valor não numérico como erro, no entanto printf está interpretando, o que poderia ser um número e o que não poderia ser.
Variáveis somente leitura
Você pode ter ouvido apenas leitura de memória (ROM), mas o que é variável somente leitura? Tem alguma semelhança com ROM?
Variáveis somente para leitura bem leitura, como a memória somente leitura, é algo cujo valor não pode ser alterado depois de atribuído. Portanto, é chamado apenas de leitura. Você não pode escrever, editar ou modificar um novo valor para essa variável. Aqui está uma ilustração usando o exemplo.
Decalre apenas uma leitura (-r) Nome da variável, cujo valor é “Tecmint.com ”.
[Email Protected]: ~ $ declarar -r name = "Tecmint.com "
Printf o valor da variável declarada acima.
[Email Protected]: ~ $ printf "%s \ n" "$ nome" Tecmint.com
Tente alterar o valor da variável.
[Email Protected]: ~ $ declarar -r name = "Avishek" Bash: Declarar: Nome: Readenly
Como discutido acima, os atributos de uma variável somente leitura podem ser alterados usando '+' sinal.
Exportando variáveis no Linux
Todas as variáveis de shell declaradas em um script de shell estão disponíveis até que o script esteja em execução. Fora do script, a variável do script não existe. O processo de disponibilizar variáveis fora do script é chamado de variáveis de exportação.
Uma variável pode ser exportada para fora do shell usando o interruptor declarar -x (exportação), que reconhecem o shell o que você queria exportar. Uma chave de exportação de declarar pode ser usada como.
[Email protegido]: ~ $ declarar -x variável = "constant_value"
Todas as alterações feitas na variável enquanto o script está sendo perdido quando a variável é exportada para fora do script. A variável de exportação é muito importante no script de shell.
Queremos ter uma variável que deve ser somente leitura e disponível fora do script, precisamos usar o switch -r e alternar -x ao mesmo tempo.
[Email protegido]: ~ $ declarar -rx variável = "constant_value"
variáveis ambientais
As variáveis compartilhadas entre o programa e o programa que as executa. Variáveis de ambiente podem ser exportadas, mas os atributos não podem ser atribuídos a ele.
Compreendendo a teoria acima praticamente. Aqui temos dois scripts 0.sh e 1.sh.
# 0.sh #!/bin/bash declarar -rx nome = tecmint bash 0.SH saída 0
E o segundo script é.
# 1.sh #!/bin/bash printf "%s \ n" "$ nome" nome = Tecmint.com printf "%s \ n" "$ nome" saída 0
Aqui o que está acontecendo, é uma variável (nome) é declarada apenas leitura e exportada e imediatamente após o segundo script ser chamado.
O segundo script acabou de imprimir a variável do primeiro script que foi exportado no primeiro printf declaração. Na declaração PrintF Second Print, mostra o novo valor atribuído à variável 'nome'.
Não há necessidade de se preocupar que a variável fosse somente leitura, como pode ser transferida. Você não se lembra de que “todas as alterações feitas na variável enquanto o script está em execução, é perdido quando a variável é exportada para fora do script.”
Referências
O declarar O comando permite todos os interruptores abaixo junto com sua combinação.
- -a : Declara uma matriz.
- -f : Exibir função e definição.
- -F : Nome da função de exibição.
- -r : Declare a variável como somente leitura.
- -x : Declare a variável como exportável.
- -EU : Declare a variável como inteira.
É tudo por agora. No próximo artigo, discutiremos maneiras de substituir variáveis usando 'aval'Comando e as variáveis já definidas em Bash antes de fechar este tópico. Espero que vocês estejam aproveitando sua jornada até a profundidade de scripts. Até então fique atento e conectado a Tecmint.com.
- « Criando hosts virtuais, gerar certificados e chaves SSL e ativar o gateway CGI no Gentoo Linux
- Instalando a GUI (desktop de canela) e softwares básicos no arch Linux »