Luo bash -tiedosto nimeltä ' for_list1.sh Ja lisää seuraava kirjoitus. Silmukassa käytetään merkkijonoarvoa, jossa on välilyöntejä. Oletusarvoisesti merkkijonon arvo erotetaan välilyönnillä. Silmukka jakaa merkkijonon sanoiksi ja tulostaa jokaisen sanan lisäämällä uuden rivin.
#!/bin/bash
# Lue merkkijono, jossa on välilyöntejä silmukalle
vartenarvosisäänTykkään ohjelmoinnista
tehdä
heitti pois $ arvo
tehty
Lähtö:
$lyödäfor_list1.sh
Esimerkki 2: Merkkijonomuuttujan toistaminen käyttämällä silmukkaa
Luo bash -tiedosto nimeltä ' for_list2.sh Ja lisää seuraava kirjoitus. Määritä muuttujaan teksti, StringVal ja lue tämän muuttujan arvo käyttämällä silmukkaa. Tämä esimerkki toimii myös kuten edellinen esimerkki ja jakaa muuttujan arvon sanoiksi välilyönnin perusteella.
#!/bin/bash
# Määritä merkkijonomuuttuja arvolla
StringVal='Tervetuloa linuxhintiin'
# Toista merkkijonomuuttuja silmukan avulla
vartentuntiasisään $ StringVal;tehdä
heitti pois $ tuntia
tehty
Lähtö:
$lyödäfor_list2.sh
Esimerkki 3: Toista merkkijonoarvojen taulukko
Luo bash -tiedosto nimeltä ' for_list3.sh Ja lisää seuraava kirjoitus. Joukko merkkijonoarvoja ilmoitetaan tyypillä tässä skriptissä. Taulukossa on kaksi tilaa sisältävää arvoa Linux Mint ja Red Hat Linux . Tämä skripti tuottaa tuloksen jakamalla nämä arvot useiksi sanoiksi ja tulostamalla erillisenä arvona. Mutta tämä ei ole oikea lähtö. Tämän tyyppisen ongelman ratkaisu on esitetty seuraavassa esimerkissä.
#!/bin/bash# Ilmoita merkkijonotyyppi tyypillä
julistaa -kohteeseen StringArray=('Linux Mint' 'Fedora' 'Red Hat Linux' 'Ubuntu' 'Debian' )
# Toista merkkijonotaulukkoa silmukan avulla
vartentuntiasisään $ {StringArray [@]};tehdä
heitti pois $ tuntia
tehty
Lähtö:
$lyödäfor_list3.sh
Esimerkki 4: Tulosta usean sanan merkkijonoarvo yhdeksi arvoksi
Luo bash -tiedosto nimeltä ' for_list4.sh Ja lisää seuraava kirjoitus. Tässä esimerkissä taulukkomuuttujan jokainen elementti, StringArray sisältää kahden sanan arvot. Jos haluat tulostaa jokaisen arvon jakamatta ja ratkaista edellisen esimerkin ongelman, sinun on vain liitettävä taulukon muuttuja kaksinkertainen lainaus silmukan sisällä.
#!/bin/bash# Ilmoita merkkijonotyyppi tyypillä
julistaa -kohteeseen StringArray=('Windows XP' 'Windows 10' 'Windows ME' 'Windows 8.1'
'Windows Server 2016' )
# Lue taulukon arvot välilyönnillä
vartentuntiasisään ''$ {StringArray [@]}'';tehdä
heitti pois $ tuntia
tehty
Lähtö:
$lyödäfor_list4.sh
Esimerkki 5: Taulukon merkkijonoarvojen toistaminen käyttämällä*-merkkiä
Luo bash -tiedosto nimeltä ' for_list5.sh 'Seuraavalla koodilla. Tässä*-merkkiä käytetään kaikkien taulukon merkkijonoarvojen lukemiseen. Ensimmäistä silmukkaa käytetään taulukkoarvojen näyttämiseen useilla riveillä ja toista silmukalla käytetään taulukkoarvojen näyttämiseen yhdellä rivillä.
#!/bin/bash#Declare string array
LanguageArray=('PHP' 'Java' 'C #' 'C ++' 'VB.Net' 'Python' 'Perl')
# Tulosta taulukon arvot viivoiksi
heitti pois 'Tulosta jokainen elementti uudelle riville'
vartenval1sisään $ {LanguageArray [*]};tehdä
heitti pois $ val1
tehty
heitti pois ''
# Tulosta taulukon arvot yhdelle riville
heitti pois 'Tulosta kaikki elementit yhdelle riville'
vartenval2sisään ''$ {LanguageArray [*]}'';tehdä
heitti pois $ val2
tehty
heitti pois ''
Lähtö:
$lyödäfor_list5.sh
Esimerkki 6: Pilkuilla erotettujen merkkijonoarvojen toistaminen
Luo uusi bash -tiedosto nimeltä ' for_list6.sh ' seuraavalla koodilla. Tässä, pilkku (,) käytetään merkkijonojen arvojen jakamiseen. IFS muuttujaa käytetään kenttäerottimen asettamiseen.
#!/bin/bashDataList='HTML5, CCS3, BootStrap, JQuery'
Kentän_erotin=$ IFS
# aseta pilkku merkkijonoluettelon sisäiseksi kentänerottimeksi
IFS=,
vartentuntiasisään $ DataList;
tehdä
heitti pois $ tuntia
tehty
IFS=$ Field_Separator
Lähtö:
$lyödäfor_list6.sh
Esimerkki 7: Useiden merkkijonojen lukeminen yhdessä
Luo bash -tiedosto nimeltä ' for_list7.sh Ja lisää seuraava kirjoitus. Tässä esimerkissä kaksi merkkijonotaulukkoa määritellään ja yhdistetään toiseen taulukkoon. Ulkoista silmukkaa käytetään yhdistetyn taulukon lukemiseen ja sisäistä silmukkaa kunkin sisäisen taulukon lukemiseen.
#! /bin/shstr_array1=('Magento 2.2.4' 'WooCommerce')
str_array2=('CodeIgnitor' 'Laravel')
yhdistää=(str_array1 str_array2)
vartenhoidettusisään $ {yhdistä [@]}
tehdä
eval 'valuutta' $ {'$ arrItem'[@]}'; toista '$ val'; valmis '
tehty
Lähtö:
$lyödäfor_list7.sh
Esimerkki 8: Kuvion käyttäminen merkkijonoluettelon lukemiseen
Luo uusi bash -tiedosto nimeltä for_list8.sh seuraavalla koodilla. Tässä, ' /, /' Kuviota käytetään merkkijonojen jakamiseen pilkun perusteella.
#! /bin/sh# Määritä merkkijonomuuttujan luettelo
stringList= WordPress, Joomla, Magento
# Käytä erottimena pilkkua ja käytä mallina
vartentuntiasisään $ {stringList //,/}
tehdä
heitti pois $ tuntia
tehty
Lähtö:
$lyödäfor_list8.sh
Toivottavasti tämän opetusohjelman esimerkit auttavat sinua ymmärtämään sen käyttöä silmukkaa varten merkkijonoluettelon iteroimiseksi, tästä aiheesta videon, katso alla: