Encontre o comprimento da matriz em Bash

Encontre o comprimento da matriz em Bash
Matrizes são um excelente meio de armazenar um grande número de valores de dados que pertencem ao mesmo tipo de dados. Eles são usados ​​muito extensivamente em todas as linguagens de programação por aí. Matrizes podem ter tamanhos variados, dependendo das necessidades do programador. Além disso, eles podem ser estáticos ou dinâmicos. Matrizes estáticas são aquelas cujos tamanhos são predefinidos, enquanto os tamanhos das matrizes dinâmicas são definidas no tempo de execução. No entanto, existem vários programas cuja lógica inteira depende de encontrar o tamanho ou o comprimento de uma matriz.

Portanto, deve haver uma maneira pela qual possamos obter o tamanho exato ou o comprimento de uma matriz para que possamos escrever programas eficientes com a ajuda dele. Assim como outras linguagens de programação, Bash também permite criar matrizes e brincar com elas. Além disso, você pode executar todas essas operações com matrizes no Bash, como pode fazer com qualquer outra linguagem de programação. Neste tutorial, desejamos ensinar -lhe os métodos de encontrar o comprimento da matriz em Bash em um Ubuntu 20.04 Sistema.

Método de encontrar o comprimento da matriz em Bash no Ubuntu 20.04

Para encontrar o comprimento da matriz em Bash, você pode usar notações diferentes. No entanto, para ter uma idéia melhor de usar essas anotações, você pode dar uma olhada nos três exemplos a seguir. Os dois primeiros exemplos são baseados no uso básico das duas notações diferentes pelas quais você pode encontrar o comprimento da matriz em Bash, enquanto o terceiro exemplo fará o uso prático desse comprimento de matriz em um script bash.

Exemplo # 1: Encontrando o comprimento da matriz com a variável $ #@ especial em bash

Para usar a notação $#@ para encontrar o comprimento da matriz em Bash, escrevemos o script Bash mostrado na imagem abaixo:

Neste script Bash, declaramos uma matriz com o nome "nomes" e atribuímos a ele três valores de string i.e. Aqsa, Ahmed e Ayesha. Depois disso, criamos uma variável chamada "Len". Queríamos que essa variável segurasse o comprimento da matriz de nomes. Atribuímos o comprimento de nossa matriz de nomes a esta variável usando a notação $#@. Então temos um comando de eco para imprimir uma mensagem no terminal. Finalmente, temos outro comando de eco que imprimirá o valor da variável “len” i.e. a duração de nossos nomes matriz.

Agora, vamos executar este script de bash com o seguinte comando depois de salvá -lo:

$ Bash Comprimento.sh

Neste comando, comprimento.sh é o nome do nosso arquivo de scripts de bash. Você pode substituí -lo com o nome do arquivo de script Bash que você criará.

Quando este script for executado corretamente, você verá o comprimento da matriz dos nomes matriz no terminal, como mostrado na imagem abaixo:

Isso significa que a notação $#@ imprimiu corretamente o comprimento de nossos nomes Array i.e. 3.

Exemplo # 2: Encontrando o comprimento da matriz com a variável especial $ #* especial em Bash:

Neste exemplo, temos o mesmo script que usamos para o nosso primeiro exemplo. A única diferença é que, neste script, usamos a notação $#* para encontrar o comprimento da matriz em Bash em vez da notação $#@. As anotações $#* e $#@ em bash são usadas principalmente de forma intercambiável, pois ambas servem ao mesmo propósito. Nosso exemplo de script bash para esta modificação é mostrado na imagem a seguir:

No script Bash mostrado na imagem acima, acabamos de substituir "@" por "*" na linha # 3 do nosso script. O restante do script é precisamente idêntico ao do nosso primeiro exemplo.

Agora, executaremos este script bash ligeiramente modificado com o mesmo comando que compartilhamos com você em nosso primeiro exemplo. Quando executamos esse script Bash, nossa saída acabou sendo a mesma do nosso primeiro exemplo. Você pode confirmar isso a partir da imagem que anexamos abaixo.

Isso significa que a notação $#* também imprimiu o comprimento de nossos nomes, o que, por sua vez.

Exemplo # 3: Usando o comprimento da matriz como a condição de loop em Bash:

Agora, este exemplo é um pouco complexo que os dois primeiros exemplos. Aqui, gostaríamos de mencionar que você pode usar qualquer uma das duas anotações de $#@ e $#* para escrever este script Bash. Você terá que escrever um script bash semelhante ao mostrado na imagem a seguir para executar este exemplo:

Neste script, simplesmente declaramos uma variedade de "nomes" e atribuímos três valores i.e. Aqsa, Ahmed e Ayesha. Depois disso, declaramos uma variável chamada "Len" e atribuímos a ele o comprimento de nossa matriz de nomes enquanto usamos a notação $#*. Em seguida, imprimimos o valor da variável "len" no terminal I.e. a duração de nossos nomes matriz. Até agora, esse script de bash parecia os scripts que usamos para nossos dois primeiros exemplos. Mas a partir daqui em diante, este script contém algumas partes adicionais de código.

Queríamos imprimir os elementos desta matriz no terminal. Para isso, temos um "loop" que itera através da variável "i" e a condição terminante desse loop depende do comprimento de nossos nomes, ou, em outras palavras, depende do valor da variável "Len" que no nosso caso era 3. Isso significa que nosso "para loop" terá um total de três iterações. Dentro disso "para loop", acabamos de tentar imprimir os valores de todos os índices de nossos nomes Array.

Depois de salvar este script Bash, executamos -o usando o mesmo comando que compartilhamos com você em nosso primeiro exemplo. Após a execução, esse script primeiro imprimiu o valor da variável "Len" ou o comprimento de nossos nomes Matriz I.e. 3. Depois disso, esse script também imprimiu todos os elementos dos nomes matriz no terminal, como você pode ver na imagem mostrada abaixo:

Este foi apenas o uso básico do comprimento de uma matriz em Bash. No entanto, usando essas anotações, você pode criar exemplos ainda mais complexos.

Conclusão

Neste artigo, compartilhamos com você as duas notações diferentes com as quais você pode descobrir o comprimento de uma matriz em Bash no Ubuntu 20.04 com muita facilidade. Essas notações foram $#@ e $#*. Ambas as anotações funcionam da mesma maneira e é por isso que podem ser usadas de forma intercambiável. Depois de compartilhar com você o uso básico dessas duas anotações, compartilhamos com você um exemplo relativamente complexo que utiliza o comprimento de uma matriz que foi encontrada ao fazer uso de uma dessas duas notações. Agora, quando você aprendeu os métodos de encontrar a duração de uma matriz em Bash no Ubuntu 20.04, não será mais um problema para você escrever programas Bash que dependam inteiramente dos comprimentos ou tamanhos das matrizes usadas nesses programas.