Johdatus Unixin taulukkoon

Matriisi on tietorakenne, joka sisältää ryhmän elementtejä, jotka ovat tyypillisiä samalle tietotyypille, kuten merkkijono, kokonaisluku, kelluva jne. Matriisitietorakenne on saatavana myös Unixissa.

  • Taulukko Unix-järjestelmässä: Se on kokoelma elementtejä, jotka voivat olla tai eivät ole saman tyyppisiä.
  • Hakemisto: Taulukko on nollapohjainen, mikä tarkoittaa, että taulukon elementteihin viitataan nollasta alkavassa indeksissä.
  • Koko: Ryhmän kokoa ei ole rajoitettu

Unixin taulukon syntaksi

Shellin komentosarjoissa taulukon muodostamiseksi on erilaisia ​​tapoja. Katsokaamme kaikki yksityiskohdat yksityiskohtaisesti:

1. Epäsuora ilmoitus: Täälle annetaan arvo tietylle indeksille liikkeellä ollessa. Esimerkki josta mainitaan alla.

Syntaksi:

array_name(index) = value

2. Selkeä ilmoitus: Ensin taulukko julistetaan ja myöhemmin arvot osoitetaan sille. Deklaroi on sisäänrakennettu avainsana ja -a on vaihtoehto lukea sisäänrakennettu, joka mahdollistaa lukemisen ja arvojen määrittämisen.

Syntaksi:

declare -a array_name

3. Yhdistelmämääritys: Tässä taulukossa ilmoitetaan useita arvoja kerrallaan.

Syntaksi:

array_name = (value1 value2 value3 . . . valueN)

Tai

array_name = ((0)=value1, (1)=value2, (2)=value3..)

Hakemisto on tässä valinnainen, jos indeksiä ei ole annettu, arvo osoitetaan viimeiselle indeksille plus yksi

Kuinka array toimii Unixissä?

Olemme oppineet erilaisia ​​tapoja luoda taulukko Unixiin, siirrytään nyt eteenpäin ja katsotaan erilaisia ​​toimintoja, jotka voidaan suorittaa Unix-taulukossa.

1. Luomme nimiryhmän

2. Päästäksesi kaikkiin taulukon elementteihin käytä joko (*) tai (@)

Koodi:

echo $(first_name(*))
echo $(first_name(@))

Huomaa: echo-komento on Unixissa sisäänrakennettu komento, jota käytetään tekstin tai merkkijonon näyttämiseen, joka on annettu argumentiksi komennolle. 'Kaiun' syntaksi mainitaan alla.

Syntaksi:

echo (options) (arguments)

3. Pääset mihin tahansa merkkijonoelementtiin indeksin avulla.

Koodi:

echo $(first_name(0))
echo $(first_name(1))
echo $(first_name(2))

lähtö:

Huomaa: () kiharanauhoja käytetään viittaamaan taulukon sisältöön.

4. Tulosta elementit alueelle. Saman syntaksi on seuraava:

Syntaksi:

echo $array_name(which element):starting_index:count_element)

Tutustukaamme samaan.

Koodi:

echo $(first_name(@):0:2)
echo $(first_name(@):2:3)
echo $(first_name(0):1:2)

lähtö:

@ - tarkoittaa kaikkia taulukon elementtejä
Komennossa echo $ (etunimi (@): 0: 2)
@ ota huomioon kaikki taulukon elementit. 0 - tarkoittaa aloittamista tällä tietyllä hakemistolla ja 2 näyttää elementtien määrän lähtöpisteestä
2 näyttää useita elementtejä lähtöpisteestä

Tässä komennossa kaiku $ (etunimi (0): 1: 2)
0 - tarkastellaan taulukon 0 - elementtiä. 1- on lähtökohta ja 2 - on alkioiden lukumäärä lähtöpisteestä

5. Saadaksesi taulukon koon

Koodi:

echo $(#first_name(@))
or
echo $(#first_name(*))

lähtö:


Huomaa: #: ta käytetään tietyn taulukon elementin pituuden löytämiseen.

6. Löydät taulukon tietyn elementin pituuden

Koodi:

echo $(#first_name(0))

Tulos :

7. Saadaksesi taulukon hakemiston käyttämällä alla olevaa komentoa.

Koodi:

echo $(!first_name(@))

lähtö:


Huomaa :! käytetään saadaksesi taulukon indeksin.

8. Järjestelmän poistamiseksi komentosarjasta käytetään unset-komentoa. Se on sisäänrakennettu komento tuhota taulukko tai mikä tahansa sen osa

Syntaksi:

unset array_name

Koodi:

unset first_name

9. Elementin poistaminen tietystä hakemistosta

unset first_name(2)

Tämä poistaa elementin hakemistossa 2.

10. Erityisen kuvion etsiminen taulukosta.

Koodi:

echo $(first_name(@)/*(aA)*/)

lähtö:

Tässä etunimi (@): tarkoittaa kaikkia taulukon elementtejä
/ etsittävä kuvio /: Taulukko etsitään taulukosta tai sen elementistä.
Se tuottaa yhden, jos ottelu löytyy, ja 0, jos vastaavuutta ei löydy.

11. Etsitään tiettyä mallia ja korvata se annetussa taulukossa.

Koodi:

echo $(first_name(@)//a/A)

etunimi (@): Harkitse kaikkia taulukon elementtejä
// etsittävä malli / korvaava merkkijono /: Etsi ja korvaava merkkijono

lähtö:

etunimi (2): Etsi ja korvaa elementille suoritettavat toimenpiteet hakemistolla 2.

Haun ja korvaamistoiminnon aikana taulukon alkuperäiseen arvoon ei tehdä muutoksia. Se palauttaa uuden arvon, joka voidaan tallentaa samoihin tai eri muuttujiin.

12. Suorittaaksesi operaation taulukon elementeille, käytä Loops-silmukoita. Kuten kaikki muutkin ohjelmointikielet, Bourne-kuori tukee kahden tyyppisiä silmukoita eli silmukkaa ja silmukkaa varten. Katsotaanpa esimerkkiä iteroidaksesi taulukon avulla käyttämällä silmukkaa.

Koodi:

Arr = (1 2 3 4 5)
for i in “$(Arr(@))”
do
echo $i
done

Tulos :

Samoin voit iteroida taulukon kautta myös jonkin aikaa käytettäessä.

Muista, että Unixissa on saatavana erityyppisiä kuoreja, kuten Bash, K-kuori, Bourne-kuori jne. Shell ei ole muuta kuin käyttöliittymä Unix-järjestelmiin, joissa on erilaiset komennot ja toiminnot. Joten erityyppisiin kuoretyyppeihin perustuen, taulukkoon ja sen toimintoihin liittyy erilaisia ​​syntakseja, joiden komennon syntaksissa on vähän muutoksia, joista keskustellaan yllä.

Bash Shell sallii myös muuttujien matriisitoiminnot ilman, että muuttujia ilmoitetaan nimenomaisesti matriisina. Katsokaamme esimerkkiä ymmärtääksesi paremmin yllä olevaa lausumaa.

Koodi:

String_variable = India is a democratic country
echo “$(string(0))”

lähtö:

johtopäätös

Pohjimmiltaan taulukko on kokoelma esineitä, jotka on tallennettu viereiseen muistipaikkaan. Taulukon muodostamisen tarkoituksena on tallentaa useita samantyyppisiä kohteita samojen tai eri tietotyyppien kanssa. Miksi taulukkorakenteen viivästyminen suosii käytännössä johtuu siitä, että se ei ole yhteensopiva erilaisten kuori- ja monimutkaisten rakenteiden kanssa.

Suositellut artikkelit

Tämä on opas Arrayan Unixissa. Tässä keskustellaan Unixin taulukon syntaksista ja työskentelystä sekä erilaisista esimerkeistä ja koodin toteutuksesta. Voit myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -

  1. Linux-välityspalvelin
  2. Kuorityypit Linuxissa
  3. Luo käyttäjä Linuxissa
  4. Unix-tiedostojärjestelmä
  5. Opas For Loop -sovellukseen