Gelung Bash Melalui Senarai Rentetan

Bash Loop Through List Strings



Senarai rentetan atau susunan atau urutan unsur dapat diulang dengan menggunakan untuk gelung dalam bash. Bagaimana anda dapat mengulangi senarai rentetan dalam Bash by loop ditunjukkan dalam tutorial ini dengan menggunakan pelbagai contoh skrip bash. Sekiranya anda pemula adalah pemrograman bash maka anda boleh membaca tutorialnya BASH Untuk Contoh Gelung sebelum memulakan tutorial ini.

Buat fail bash bernama ' untuk_list1.sh 'Dan tambahkan skrip berikut. Nilai rentetan dengan spasi digunakan untuk gelung. Secara lalai, nilai rentetan dipisahkan dengan ruang. Untuk gelung akan membahagi rentetan menjadi kata-kata dan mencetak setiap perkataan dengan menambahkan baris baru.







#! / bin / bash
# Baca rentetan dengan ruang menggunakan gelung
untuknilaidalamSaya suka pengaturcaraan
buat
membuang nilai $
selesai

Pengeluaran:



$bashuntuk_list1.sh



Contoh-2: Memanaskan pemboleh ubah rentetan menggunakan gelung

Buat fail bash bernama ' untuk_list2.sh 'Dan tambahkan skrip berikut. Tetapkan teks ke dalam pemboleh ubah, StringVal dan baca nilai pemboleh ubah ini menggunakan untuk gelung. Contoh ini juga akan berfungsi seperti contoh sebelumnya dan membahagikan nilai pemboleh ubah menjadi perkataan berdasarkan ruang.





#! / bin / bash
# Tentukan pemboleh ubah rentetan dengan nilai
StringVal='Selamat datang ke linuxhint'

# Ulangi pemboleh ubah rentetan menggunakan gelung
untukjamdalam $ StringVal;buat
membuang $ jam
selesai

Pengeluaran:

$bashuntuk_list2.sh



Contoh-3: Mengulangi susunan nilai rentetan

Buat fail bash bernama ' untuk_list3.sh 'Dan tambahkan skrip berikut. Pelbagai nilai rentetan dinyatakan dengan jenis dalam skrip ini. Dua nilai dalam array yang mengandungi ruang adalah Linux Mint dan Red Hat Linux . Skrip ini akan menghasilkan output dengan membagi nilai-nilai ini menjadi beberapa perkataan dan mencetak sebagai nilai yang berasingan. Tetapi ini bukan output yang betul. Penyelesaian masalah jenis ini ditunjukkan dalam contoh seterusnya.

#! / bin / bash

# Menyatakan pelbagai rentetan dengan jenis
menyatakan -kepada StringArray=('Linux Mint' 'Fedora' 'Red Hat Linux' 'Ubuntu' 'Debian' )

# Iterate array string menggunakan loop
untukjamdalam $ {StringArray [@]};buat
membuang $ jam
selesai

Pengeluaran:

$bashuntuk_list3.sh

Contoh-4: Mencetak nilai rentetan pelbagai perkataan sebagai nilai tunggal

Buat fail bash bernama ' untuk_list4.sh 'Dan tambahkan skrip berikut. Dalam contoh ini, setiap elemen pemboleh ubah array, StringArray mengandungi nilai dua perkataan. Untuk mencetak setiap nilai tanpa membelah dan menyelesaikan masalah contoh sebelumnya, anda hanya perlu menyertakan pemboleh ubah array dengan petikan berganda dalam untuk gelung.

#! / bin / bash

# Menyatakan rentetan rentetan dengan jenis
menyatakan -kepada StringArray=('Windows XP' 'Windows 10' 'Windows ME' 'Windows 8.1'
'Pelayan Windows 2016' )

# Baca nilai larik dengan ruang
untukjamdalam '$ {StringArray [@]}';buat
membuang $ jam
selesai

Pengeluaran:

$bashuntuk_list4.sh

Contoh-5: Nilai rentetan pengulangan array menggunakan ‘*’

Buat fail bash bernama ' untuk_list5.sh 'Dengan kod berikut. Di sini, simbol '*' digunakan untuk membaca semua nilai rentetan array. Yang pertama untuk gelung digunakan untuk menampilkan nilai array dalam beberapa baris dan yang kedua untuk gelung digunakan untuk menampilkan nilai array dalam satu baris.

#! / bin / bash

#Menyatakan rentetan rentetan
BahasaArray=('PHP' 'Java' 'C #' 'C ++' 'VB.Net' 'Python' 'Perl')

# Cetak nilai array dalam baris
membuang 'Cetak setiap elemen dalam barisan baru'
untukval1dalam $ {LanguageArray [*]};buat
membuang $ val1
selesai

membuang ''

# Nilai susunan cetak dalam satu baris
membuang 'Cetak semua elemen dalam satu baris'
untukval2dalam '$ {LanguageArray [*]}';buat
membuang $ val2
selesai
membuang ''

Pengeluaran:

$bashuntuk_list5.sh

Contoh-6: Nilai rentetan koma pengasingan

Buat fail bash baru bernama ' untuk_list6.sh ’ dengan kod berikut. Di sini, koma (,) digunakan untuk membahagi nilai rentetan. IFS pemboleh ubah digunakan untuk menetapkan pemisah medan.

#! / bin / bash
Senarai Data='HTML5, CCS3, BootStrap, JQuery'
Field_Separator=$ IFS

# tetapkan koma sebagai pemisah medan dalaman untuk senarai rentetan
IFS=,
untukjamdalam $ Senarai Data;
buat
membuang $ jam
selesai

IFS=$ Field_Separator

Pengeluaran:

$bashuntuk_list6.sh

Contoh-7: Membaca pelbagai rentetan rentetan bersama

Buat fail bash bernama ' untuk_list7.sh 'Dan tambahkan skrip berikut. Dalam contoh ini, dua tatasusunan rentetan ditakrifkan dan digabungkan menjadi larik lain. Bahagian luar untuk gelung digunakan untuk membaca susunan gabungan dan bahagian dalam untuk gelung digunakan untuk membaca setiap susunan dalam.

#! / tong / sh
str_array1=('Magento 2.2.4' 'WooCommerce')
str_array2=('CodeIgnitor' 'Laravel')
Gabung=(str_array1 str_array2)
untukberjayadalam $ {gabungan [@]}
buat
menipu 'untuk val dalam' $ {'$ arrItem'[@]}'; gema '$ val'; selesai '
selesai

Pengeluaran:

$bashuntuk_list7.sh

Contoh-8: Menggunakan corak untuk membaca senarai rentetan

Buat fail bash baru bernama untuk_list8.sh dengan kod berikut. Di sini, '/, /' corak digunakan untuk membahagi nilai rentetan berdasarkan koma.

#! / tong / sh

# Tentukan senarai pemboleh ubah rentetan
rentetan= WordPress, Joomla, Magento

# Gunakan koma sebagai pemisah dan terapkan sebagai corak
untukjamdalam $ {stringList //, /}
buat
membuang $ jam
selesai

Pengeluaran:

$bashuntuk_list8.sh

Harap, contoh tutorial ini dapat membantu anda memahami penggunaan untuk gelung untuk mengulangi senarai rentetan, untuk video mengenai topik ini, lihat di bawah: