Expansão do parâmetro Bash

Expansão do parâmetro Bash
O parâmetro é usado no Bash para armazenar dados. Diferentes tipos de dados podem ser armazenados no parâmetro, como número inteiro, string, matriz, etc. usando embutido declarar palavra -chave. O parâmetro pode ser um parâmetro posicional, parâmetro especial e variável. Normalmente, '$' O símbolo é usado para imprimir ou atribuir o valor de uma variável, por exemplo, 'x = $ y'. O símbolo '$' é usado para expansão de parâmetros também que possui vários tipos de usos no bash. A expansão dos parâmetros pode ser usada para modificar, expandir ou substituir o valor do parâmetro. Os aparelhos opcionais são usados ​​com a variável ao usar expansão de parâmetros variáveis, como 'Echo $ myvar'. Como a expansão dos parâmetros pode ser usada no Bash para vários fins são mostrados neste tutorial.

Sintaxe:

Alguns sintaxes de expansão de parâmetros bash mais usados ​​são fornecidos abaixo.

Expansão de parâmetros Descrição
$ variável: -value Se a variável não for definida ou indefinida, expanda o valor.
$ variável: = value Se a variável não for definida ou indefinida, defina o valor para a variável.
$ variável:+valor Se a variável for definida ou definida, expanda o Value.
$ variável: start: comprimento A substring recuperará da posição inicial para a posição de comprimento da variável.
$ variável: start A substring recuperará da posição inicial para a parte restante da variável.
$ #variável Conte o comprimento da variável.
$ variável/padrão/string Substitua a parte da variável pela string, onde o padrão corresponde pela primeira vez.
$ variável // Pattern/String Substitua todas as ocorrências na variável por string, onde todos os padrões correspondem.
$ variável/#padrão/string Se o padrão existir no início da variável, substitua a ocorrência por string.
$ variável/%padrão/string Se o padrão existir no final da variável, substitua a ocorrência por string.
$ variável#padrão Remova a correspondência mais curta desde o início da variável, onde o padrão corresponde.
$ variável ## padrão Remova a correspondência mais longa desde o início da variável, onde o padrão corresponde.
$ variável%padrão Remova a correspondência mais curta do final da variável, onde o padrão corresponde.
$ variável %% padrão Remova a correspondência mais longa do final da variável, onde o padrão corresponde.

A expansão dos parâmetros pode ser categorizada por três grupos. São a expansão condicional dos parâmetros, a expansão dos parâmetros de substring e a expansão de parâmetros substitutos. Os usos dessas expansões de parâmetros são explicados com exemplos na próxima parte deste tutorial.

Exemplo 1: Expansão de parâmetros condicionais

Esses tipos de expansões de parâmetros são usados ​​para verificar se a variável é definida ou não

O seguinte comando verificará a variável, $ myvar está definido ou desmembrado. Se $ myvar é não definido, então a string 'Bash'vai imprimir.

$ echo "$ myvar: -bash"

O comando a seguir imprimirá o valor de $ myvar Se estiver definido.

$ echo $ myvar

O comando a seguir definirá o valor, 'Bash' para $ myvar e imprimir 'Bash'para o terminal se $ myvar é desmembrado.

$ echo "$ myvar: = bash"

Agora, verifique se a variável é definida ou não definida pelo seguinte comando.

$ echo $ myvar

O seguinte comando imprimirá 'Pitão'para o terminal se $ myvar está definido antes.

$ echo "$ myvar:+python"

Novamente, execute o seguinte comando para verificar o valor atual de $ myvar.

$ echo $ myvar

Saída:

A saída a seguir aparecerá após a execução dos comandos acima.

Exemplo-2: Expansão de parâmetros de substring

A expansão dos parâmetros de substring é usada para vários propósitos, como cortar qualquer parte da corda, contar caracteres totais da string, etc. O valor da string pode ser cortado de várias maneiras. Os usos das expansões dos parâmetros de substring são mostrados na próxima parte deste tutorial.

O seguinte comando atribuirá “Bangladesh”Para a variável, $ mystr.

$ mystr = "Bangladesh"

O comando seguinte cortará seis caracteres de $ mystr começando na posição 0.

$ echo "$ mystr: 0: 6"

O comando a seguir cortará todos os personagens de $ mystr, A partir da posição 6.

$ echo "$ mystr: 6"

O comando a seguir contará e imprimirá o número total de caracteres de $ mystr.

$ echo "$ #mystr"

Saída:

A saída a seguir aparecerá após a execução dos comandos acima.

Exemplo-3: String Substitua usando a expansão dos parâmetros

Diferentes tipos de expansões de parâmetros podem ser usados ​​para substituir o valor da string. Os usos da expansão dos parâmetros para substituir o valor da string são mostrados nesta parte do tutorial.

O comando a seguir atribuirá o valor: “Primeiro a entrar, primeiro a sair”Na variável, $ newstr.

$ newstr = "Primeiro na primeira saída"

A seguinte expansão do parâmetro substituirá a string, “Primeiro"Pela string"Durar”Da variável, $ newstr. A pesquisa sensível ao caso será aplicada a esta substituição.

$ echo "$ newstr/fast/last"

A seguinte expansão do parâmetro substituirá todas as ocorrências da string, “Primeiro"Pela string"Durar”Da variável, $ newstr. A pesquisa insensível ao caso se aplicará a esta substituição.

$ echo "$ newstr // fast/last"

Saída:

A saída a seguir aparecerá após a execução dos comandos acima.

O comando a seguir atribuirá o valor: “Comer para viver não viver para comer”Para a variável, $ string.

$ string = "Coma para viver, mas não viver para comer"

A palavra, "comer" aparece duas vezes na variável, $ string. O seguinte comando substituirá a palavra: “Comer" por "Trabalhar”Isso aparece no início de $ string.

$ echo "$ string/#eat/work"

O seguinte comando substituirá a palavra: “comer" por "trabalhar”Isso aparece no final de $ string.

$ echo "$ String/%Eat/Work"

Saída:

A saída a seguir aparecerá após a execução dos comandos acima.

O comando a seguir armazenará o valor “Linguagem de programação da web”Para a variável, $ var.

$ var = "linguagem de programação da web"

A seguinte expansão do parâmetro removerá a palavra: “Rede”Desde o início da variável, $ var.

$ echo "$ var/#web"

A seguinte expansão do parâmetro removerá a palavra: “Linguagem”Do final da variável, $ var.

$ echo "$ var/%idioma"

Saída:

A saída a seguir aparecerá após a execução dos comandos acima.

Conclusão:

A expansão do parâmetro Bash é um recurso muito útil do Linux. Ajuda o usuário do Linux a executar diferentes tipos de operações relacionadas a strings com muita facilidade, sem nenhuma função interna. Diferentes tipos de atribuição de string, operações de corte e reposição são mostrados neste tutorial usando a expansão do parâmetro Bash. Esperança, o leitor poderá executar tarefas relacionadas a strings com mais eficiência usando a expansão dos parâmetros depois de ler este tutorial.