Créez un fichier bash nommé ' pour_list1.sh ' et ajoutez le script suivant. Une valeur de chaîne avec des espaces est utilisée dans la boucle for. Par défaut, la valeur de chaîne est séparée par un espace. La boucle For divisera la chaîne en mots et imprimera chaque mot en ajoutant une nouvelle ligne.
#!/bin/bash
# Lire une chaîne avec des espaces en utilisant la boucle for
pourvaleurdansj'aime programmer
faire
chassèrent valeur $
terminé
Sortir:
$frapperpour_list1.sh
Exemple-2 : Itérer une variable de chaîne à l'aide de la boucle for
Créez un fichier bash nommé ' pour_list2.sh ' et ajoutez le script suivant. Affecter un texte à la variable, StringVal et lisez la valeur de cette variable à l'aide de la boucle for. Cet exemple fonctionnera également comme l'exemple précédent et divisera la valeur de la variable en mots en fonction de l'espace.
#!/bin/bash
# Définir une variable de chaîne avec une valeur
StringVal=« Bienvenue sur linuxhint »
# Itérer la variable de chaîne en utilisant la boucle for
pourheuresdans $StringVal;faire
chassèrent $ heures
terminé
Sortir:
$frapperpour_list2.sh
Exemple-3 : Itérer un tableau de valeurs de chaîne
Créez un fichier bash nommé ' for_list3.sh ' et ajoutez le script suivant. Un tableau de valeurs de chaîne est déclaré avec type dans ce script. Deux valeurs du tableau qui contiennent de l'espace sont Linux Mint et Red Hat Linux . Ce script générera la sortie en divisant ces valeurs en plusieurs mots et en les imprimant en tant que valeur séparée. Mais ce n'est pas la sortie appropriée. La solution de ce type de problème est montrée dans l'exemple suivant.
#!/bin/bash# Déclare un tableau de chaîne de type
déclarer -à TableauChaîne=('Linux Mint' 'Feutre' 'Red Hat Linux' 'Ubuntu' 'Debian' )
# Itérer le tableau de chaînes en utilisant la boucle for
pourheuresdans ${StringArray[@]};faire
chassèrent $ heures
terminé
Sortir:
$frapperfor_list3.sh
Exemple-4 : Imprimer la valeur de chaîne de plusieurs mots en tant que valeur unique
Créez un fichier bash nommé ' pour_list4.sh ' et ajoutez le script suivant. Dans cet exemple, chaque élément de la variable tableau, TableauChaîne contient les valeurs de deux mots. Pour imprimer chaque valeur sans fractionnement et résoudre le problème de l'exemple précédent, il vous suffit d'entourer la variable de tableau avec citation double dans la boucle for.
#!/bin/bash# Déclarer un tableau de chaînes avec le type
déclarer -à TableauChaîne=('Windows XP' 'Windows 10' 'Windows ME' 'Windows 8.1'
'Windows Server 2016' )
# Lire les valeurs du tableau avec espace
pourheuresdans '${StringArray[@]}';faire
chassèrent $ heures
terminé
Sortir:
$frapperpour_list4.sh
Exemple-5 : Itération des valeurs de chaîne d'un tableau à l'aide de « * »
Créez un fichier bash nommé ' pour_list5.sh ' avec le code suivant. Ici, le symbole '*' est utilisé pour lire toutes les valeurs de chaîne du tableau. La première boucle for est utilisée pour afficher les valeurs du tableau sur plusieurs lignes et la seconde boucle for est utilisée pour afficher les valeurs du tableau sur une seule ligne.
#!/bin/bash#Déclarer un tableau de chaînes
TableauLanguage=('PHP' 'Java' 'C #' 'C++' 'VB.Net' 'Python' 'Perle')
# Affiche les valeurs du tableau en lignes
chassèrent 'Imprimer chaque élément dans une nouvelle ligne'
pourval1dans ${LanguageArray[*]};faire
chassèrent $ val1
terminé
chassèrent ''
# Affiche les valeurs du tableau sur une ligne
chassèrent 'Imprimer tous les éléments sur une seule ligne'
pourval2dans '${LanguageArray[*]}';faire
chassèrent $val2
terminé
chassèrent ''
Sortir:
$frapperpour_list5.sh
Exemple-6 : Itération de valeurs de chaîne séparées par des virgules
Créez un nouveau fichier bash nommé ' for_list6.sh' avec le code suivant. Ici, virgule (,) est utilisé pour diviser les valeurs de chaîne. IFS variable est utilisée pour définir le séparateur de champ.
#!/bin/bashListe de données=' HTML5, CCS3, BootStrap, JQuery '
Field_Separator=$IFS
# définir une virgule comme séparateur de champ interne pour la liste de chaînes
IFS=,
pourheuresdans $ListeDonnées;
faire
chassèrent $ heures
terminé
IFS=$Field_Separator
Sortir:
$frapperpour_list6.sh
Exemple-7 : Lecture de plusieurs tableaux de chaînes ensemble
Créez un fichier bash nommé ' pour_list7.sh ' et ajoutez le script suivant. Dans cet exemple, deux tableaux de chaînes sont définis et combinés dans un autre tableau. La boucle for externe est utilisée pour lire le tableau combiné et la boucle for interne est utilisée pour lire chaque tableau interne.
# ! /bin/shstr_array1=('Magento 2.2.4' « Woo Commerce »)
str_array2=('CodeIgnitor' 'Laravel')
combiner=(str_array1 str_array2)
pourgérédans ${combine[@]}
faire
évaluer 'pour val dans '${'$ arrÉlément'[@]}';do echo '$val';done'
terminé
Sortir:
$frapperpour_list7.sh
Exemple-8 : Utiliser pattern pour lire la liste des chaînes
Créez un nouveau fichier bash nommé pour_list8.sh avec le code suivant. Ici, '/, /' pattern est utilisé pour diviser les valeurs de chaîne en fonction de la virgule.
# ! /bin/sh# Définir une liste de variable de chaîne
liste de chaînes=WordPress,Joomla,Magento
# Utilisez une virgule comme séparateur et appliquez comme motif
pourheuresdans ${stringList//,/ }
faire
chassèrent $ heures
terminé
Sortir:
$frapperpour_list8.sh
J'espère que les exemples de ce tutoriel vous aideront à comprendre l'utilisation de pour boucle pour itérer la liste des chaînes, pour une vidéo sur ce sujet, voir ci-dessous :