Znajdź długość tablicy w Bash

Znajdź długość tablicy w Bash
Tablice są doskonałym sposobem przechowywania dużej liczby wartości danych, które należą do tego samego typu danych. Są one bardzo szeroko używane we wszystkich językach programowania. Tablice mogą mieć różne rozmiary w zależności od potrzeb programisty. Ponadto mogą być statyczne lub dynamiczne. Tablice statyczne są tymi, których rozmiary są predefiniowane, podczas gdy rozmiary tablic dynamicznych są zdefiniowane w czasie wykonywania. Istnieje jednak wiele programów, których cała logika zależy od znalezienia wielkości lub długości tablicy.

Dlatego musi istnieć sposób, przez który możemy uzyskać dokładny rozmiar lub długość tablicy, abyśmy mogli pisać wydajne programy za pomocą tego. Podobnie jak inne języki programowania, Bash pozwala również tworzyć tablice i bawić się z nimi. Dodatkowo możesz wykonywać wszystkie te operacje z tablicami w Bash, tak jak w przypadku dowolnego innego języka programowania. W tym samouczku chcemy nauczyć Cię metod znalezienia długości tablicy w Bash na Ubuntu 20.04 System.

Metoda znalezienia długości tablicy w Bash w Ubuntu 20.04

Aby znaleźć długość tablicy w Bash, możesz skorzystać z różnych zapisów. Jednak, aby uzyskać lepszy pomysł na użycie tych zapisów, możesz przyjrzeć się następującym trzema przykładami. Pierwsze dwa przykłady oparte są na podstawowym użyciu dwóch różnych zapisów, za pomocą których można znaleźć długość tablicy w Bash.

Przykład nr 1: Znalezienie długości tablicy z $ #@ Special Variable w Bash

Aby użyć notacji $#@ do znalezienia długości tablicy w Bash, napisaliśmy skrypt bash pokazany na poniższym obrazku:

W tym skrypcie Bash zadeklarowaliśmy tablicę o nazwie „Nazwa” i przypisaliśmy do niej trzy wartości i wartości i.mi. Aqsa, Ahmed i Ayesha. Następnie stworzyliśmy zmienną o nazwie „Len”. Chcieliśmy, aby ta zmienna utrzymywała długość tablicy nazwisk. Przypisaliśmy długość naszej tablicy nazw do tej zmiennej za pomocą notacji $#@. Następnie mamy polecenie echa, aby wydrukować wiadomość na terminalu. Na koniec mamy kolejne polecenie echa, które wydrukuje wartość zmiennej „len” i.mi. długość naszych nazwisk.

Teraz po zapisaniu go uruchomimy ten skrypt bash z następującym poleceniem:

$ Bash Długość.cii

W tym poleceniu długość.SH to nazwa naszego pliku skryptu Bash. Możesz zastąpić go nazwą pliku skryptu Bash, który utworzysz.

Gdy ten skrypt zostanie wykonany poprawnie, zobaczysz długość tablicy tablicy nazw na terminalu, jak pokazano na poniższym obrazku:

Oznacza to, że notacja $#@ poprawnie wydrukowała długość naszych nazwisk i.mi. 3.

Przykład nr 2: Znalezienie długości tablicy z $ #* Specjalną zmienną w Bash:

W tym przykładzie mamy ten sam skrypt, którego użyliśmy dla naszego pierwszego przykładu. Jedyną różnicą jest to, że w tym skrypcie użyliśmy notacji $#* do znalezienia długości tablicy w Bash zamiast notacji $#@. Notacje $#* i $@ w bash są w większości używane zamiennie, ponieważ oba służą temu samemu celowi. Nasz przykładowy skrypt bash dla tej modyfikacji pokazano na poniższym obrazku:

W skrypcie Bash pokazanym na powyższym obrazku właśnie zastąpiliśmy „@” „*” w wierszu nr 3 naszego skryptu. Reszta skryptu jest dokładnie identyczna z naszym pierwszym przykładem.

Teraz wykonamy ten nieco zmodyfikowany skrypt bash z tym samym poleceniem, które udostępniliśmy ci w naszym pierwszym przykładzie. Kiedy wykonaliśmy ten skrypt bash, nasze wyjście okazało się takie samo jak w naszym pierwszym przykładu. Możesz to potwierdzić na podstawie obrazu, który dołączyliśmy poniżej.

Oznacza to, że notacja $#* również poprawnie wydrukowała długość naszych nazwisk.

Przykład nr 3: Używanie długości tablicy jako warunku pętli w Bash:

Teraz ten przykład jest nieco złożony niż dwa pierwsze przykłady. Tutaj chcielibyśmy wspomnieć, że możesz użyć dowolnego z dwóch zapisów z $#@ i $#*. Będziesz musiał napisać skrypt bash podobny do tego pokazanego na poniższym obrazku do wykonania tego przykładu:

W tym skrypcie po prostu zadeklarowaliśmy szereg „nazw” i przypisaliśmy jej trzy wartości i.mi. Aqsa, Ahmed i Ayesha. Następnie zadeklarowaliśmy zmienną o nazwie „len” i przypisaliśmy do niej długość naszej tablicy nazw podczas używania notacji $#*. Następnie wydrukowaliśmy wartość zmiennej „len” na terminalu i.mi. długość naszych nazwisk. Do tej pory ten skrypt Bash wyglądał jak skrypty, których użyliśmy dla naszych pierwszych dwóch przykładów. Ale stąd ten skrypt zawiera dodatkowe fragmenty kodu.

Chcieliśmy wydrukować elementy tej tablicy na terminalu. W tym celu mamy „dla pętli”, która itera przez zmienną „i”, a warunek zakończenia tej pętli zależy od długości naszej tablicy nazw lub innymi słowy, zależy to od wartości zmiennej „len” zmiennej „len” które w naszym przypadku było 3. Oznacza to, że nasze „For Loop” będzie miało w sumie trzy iteracje. W ramach tej „dla pętli” po prostu próbowaliśmy wydrukować wartości wszystkich indeksów naszych macierzy nazwisk.

Po zapisaniu tego skryptu Bash wykonaliśmy go za pomocą tego samego polecenia, które udostępniliśmy ci w naszym pierwszym przykładzie. Po wykonaniu ten skrypt najpierw wydrukował wartość zmiennej „len” lub długości naszych nazwisk i macierzy i.mi. 3. Następnie ten skrypt wydrukował również wszystkie elementy tablicy nazw na terminalu, jak widać z obrazu pokazanego poniżej:

To było po prostu podstawowe użycie długości tablicy w Bash. Jednak za pomocą tych zapisów możesz stworzyć jeszcze bardziej złożone przykłady.

Wniosek

W tym artykule podzieliliśmy się z tobą dwoma różnymi notacjami, z którymi możesz dowiedzieć się o długości tablicy w Bash w Ubuntu 20.04 Bardzo łatwo. Te zapisy były $#@ i $#*. Obie te notacje działają w ten sam sposób, dlatego można je używać zamiennie. Po podzieleniu się z wami podstawowym użyciem tych dwóch zapisów, podzieliliśmy się z tobą stosunkowo złożonym przykładem, który wykorzystuje długość tablicy, która została znaleziona podczas korzystania z jednego z tych dwóch zapisów. Teraz, gdy nauczyłeś się metod znalezienia długości tablicy w Bash w Ubuntu 20.04, nie będzie już problemem pisania programów bash, które całkowicie zależą od długości lub rozmiarów tablic używanych w tych programach.