Looge bash -fail nimega ' for_list1.sh 'Ja lisage järgmine skript. Ahela sees kasutatakse tühikutega stringi väärtust. Vaikimisi eraldatakse stringi väärtus tühikuga. Loop jagab stringi sõnadeks ja prindib iga sõna uue rea lisamisega.
#!/bin/bash
# Lugege tühikutega stringi, kasutades tsüklit
eestväärtussisseMulle meeldib programmeerimine
teha
viskas välja $ väärtus
tehtud
Väljund:
$löömafor_list1.sh
Näide-2: stringimuutuja kordamine, kasutades tsüklit
Looge bash -fail nimega ' for_list2.sh 'Ja lisage järgmine skript. Määrake muutujale tekst, StringVal ja lugege selle muutuja väärtust, kasutades tsüklit. See näide töötab samuti nagu eelmine näide ja jagab muutuja väärtuse tühikute põhjal sõnadeks.
#!/bin/bash
# Määrake väärtusega stringimuutuja
StringVal='Tere tulemast linuxhinti'
# Korda stringi muutujat, kasutades tsüklit
eesttundisisse $ StringVal;teha
viskas välja $ tundi
tehtud
Väljund:
$löömafor_list2.sh
Näide-3: kordage stringiväärtuste massiivi
Looge bash -fail nimega ' for_list3.sh 'Ja lisage järgmine skript. Selles skriptis on stringiväärtuste massiiv deklareeritud tüübiga. Massiivis on kaks ruumi sisaldavat väärtust Linux Mint ja Red Hat Linux . See skript genereerib väljundi, jagades need väärtused mitmeks sõnaks ja trükkides eraldi väärtusena. Kuid see pole õige väljund. Seda tüüpi probleemi lahendus on näidatud järgmises näites.
#!/bin/bash# Deklareerige tüübiga stringide massiiv
kuulutama -juurde StringArray=('Linux Mint' 'Fedora' 'Red Hat Linux' 'Ubuntu' 'Debian' )
# Korda stringi massiivi, kasutades tsüklit
eesttundisisse $ {StringArray [@]};teha
viskas välja $ tundi
tehtud
Väljund:
$löömafor_list3.sh
Näide-4: printige mitme sõna stringiväärtus ühe väärtusena
Looge bash -fail nimega ' for_list4.sh 'Ja lisage järgmine skript. Selles näites on massiivi muutuja iga element StringArray sisaldab kahe sõna väärtusi. Iga väärtuse printimiseks ilma poolitamata ja eelmise näite probleemi lahendamiseks peate massiivi muutuja lisama kahekordne tsitaat silmuse sees.
#!/bin/bash# Deklareerige tüübiga stringimassiiv
kuulutama -juurde StringArray=('Windows XP' 'Windows 10' 'Windows ME' 'Windows 8.1'
'Windows Server 2016' )
# Lugege massiivi väärtusi tühikuga
eesttundisisse '$ {StringArray [@]}';teha
viskas välja $ tundi
tehtud
Väljund:
$löömafor_list4.sh
Näide-5: massiivi stringiväärtuste kordamine, kasutades*
Looge bash -fail nimega ' for_list5.sh 'Järgmise koodiga. Siin kasutatakse sümbolit „*” massiivi kõigi stringiväärtuste lugemiseks. Esimest tsüklit kasutatakse massiivi väärtuste kuvamiseks mitmel real ja teist silmusel massiivi väärtuste kuvamiseks ühel real.
#!/bin/bash#Deklareeri stringimassiiv
LanguageArray=('PHP' 'Java' 'C #' „C ++” „VB.Net” 'Python' 'Perl')
# Prindi massiivi väärtused ridadesse
viskas välja 'Printige iga element uuele reale'
eestval1sisse $ {LanguageArray [*]};teha
viskas välja $ val1
tehtud
viskas välja ''
# Prindige massiivi väärtused ühele reale
viskas välja 'Prindi kõik elemendid ühele reale'
eestval2sisse '$ {LanguageArray [*]}';teha
viskas välja $ 2
tehtud
viskas välja ''
Väljund:
$löömafor_list5.sh
Näide-6: komaga eraldatud stringiväärtuste kordamine
Looge uus bash -fail nimega ' for_list6.sh ' järgmise koodiga. Siin, koma (,) kasutatakse stringi väärtuste jagamiseks. IFS muutujat kasutatakse väljade eraldaja määramiseks.
#!/bin/bashDataList=„HTML5, CCS3, BootStrap, JQuery”
Field_Spaparator=$ IFS
# määrake stringide loendi sisemise välja eraldajaks koma
IFS=,
eesttundisisse $ DataList;
teha
viskas välja $ tundi
tehtud
IFS=$ Field_Separator
Väljund:
$löömafor_list6.sh
Näide-7: mitme stringimassiivi koos lugemine
Looge bash -fail nimega ' for_list7.sh 'Ja lisage järgmine skript. Selles näites on määratletud kaks stringimassiivi ja need on ühendatud teise massiiviga. Välimist silmust kasutatakse kombineeritud massiivi lugemiseks ja sisemist silmust iga sisemise massiivi lugemiseks.
#! /bin/shstr_array1=('Magento 2.2.4' 'WooCommerce')
str_array2=('CodeIgnitor' 'Laravel')
kombineerima=(str_array1 str_array2)
eestõnnestussisse $ {kombineeri [@]}
teha
eval 'väärtuses' $ {'$ arrItem'[@]}'; kaja '$ val'; valmis '
tehtud
Väljund:
$löömafor_list7.sh
Näide-8: Mustrite kasutamine stringide loendi lugemiseks
Looge uus bash -fail nimega for_list8.sh järgmise koodiga. Siin, „ /, /” mustrit kasutatakse stringiväärtuste jagamiseks koma alusel.
#! /bin/sh# Määratlege stringimuutujate loend
stringList= WordPress, Joomla, Magento
# Kasutage eraldajana koma ja rakendage mustrina
eesttundisisse $ {stringList //,/}
teha
viskas välja $ tundi
tehtud
Väljund:
$löömafor_list8.sh
Loodetavasti aitavad selle õpetuse näited teil selle kasutamist mõista silmuse jaoks stringide loendi kordamise ja selleteemalise video kohta vaata allpool: