Bash Loop Melalui Daftar String

Bash Loop Through List Strings



Daftar string atau array atau urutan elemen dapat diulang dengan menggunakan untuk loop di bash. Bagaimana Anda dapat mengulangi daftar string di Bash dengan for loop ditunjukkan dalam tutorial ini dengan menggunakan berbagai contoh skrip bash. Jika Anda pemula adalah pemrograman bash maka Anda dapat membaca tutorialnya di BASH Untuk Contoh Loop sebelum memulai tutorial ini.

Buat file bash bernama ' for_list1.sh ' dan tambahkan skrip berikut. Nilai string dengan spasi digunakan di dalam for loop. Secara default, nilai string dipisahkan oleh spasi. Untuk loop akan membagi string menjadi kata-kata dan mencetak setiap kata dengan menambahkan baris baru.







#!/bin/bash
# Baca string dengan spasi menggunakan for loop
untuknilaidi dalamSaya suka pemrograman
melakukan
dibuang $nilai
selesai

Keluaran:



$pestafor_list1.sh



Contoh-2: Iterasi variabel string menggunakan for loop

Buat file bash bernama ' for_list2.sh ' dan tambahkan skrip berikut. Tetapkan teks ke dalam variabel, StringVal dan baca nilai variabel ini menggunakan for loop. Contoh ini juga akan bekerja seperti contoh sebelumnya dan membagi nilai variabel menjadi kata-kata berdasarkan spasi.





#!/bin/bash
# Tentukan variabel string dengan nilai
StringVal='Selamat datang di linuxhint'

# Iterasi variabel string menggunakan for loop
untukjamdi dalam $StringVal;melakukan
dibuang $ jam
selesai

Keluaran:

$pestafor_list2.sh



Contoh-3: Ulangi array nilai string

Buat file bash bernama ' for_list3.sh ' dan tambahkan skrip berikut. Array nilai string dideklarasikan dengan mengetikkan skrip ini. Dua nilai dalam array yang berisi spasi adalah Linux Mint dan Linux topi merah . Skrip ini akan menghasilkan output dengan membagi nilai-nilai ini menjadi beberapa kata dan mencetak sebagai nilai terpisah. Tapi ini bukan output yang tepat. Solusi dari jenis masalah ini ditunjukkan pada contoh berikut.

#!/bin/bash

# Deklarasikan array string dengan tipe
menyatakan -ke StringArray=('Linux Mint' 'Fedora' 'Linux Topi Merah' 'Ubuntu' 'Debian' )

# Ulangi array string menggunakan for loop
untukjamdi dalam ${StringArray[@]};melakukan
dibuang $ jam
selesai

Keluaran:

$pestafor_list3.sh

Contoh-4: Cetak beberapa nilai string kata sebagai nilai tunggal

Buat file bash bernama ' for_list4.sh ' dan tambahkan skrip berikut. Dalam contoh ini, setiap elemen dari variabel array, StringArray mengandung nilai dua kata. Untuk mencetak setiap nilai tanpa membelah dan menyelesaikan masalah dari contoh sebelumnya, Anda hanya perlu menyertakan variabel array dengan kutipan ganda dalam untuk loop.

#!/bin/bash

# Deklarasikan array string dengan tipe
menyatakan -ke StringArray=('Windows XP' 'Windows 10' 'jendela saya' 'Windows 8.1'
'WindowsServer 2016' )

# Baca nilai array dengan spasi
untukjamdi dalam '${StringArray[@]}';melakukan
dibuang $ jam
selesai

Keluaran:

$pestafor_list4.sh

Contoh-5: Iterasi nilai string dari array menggunakan '*'

Buat file bash bernama ' for_list5.sh ' dengan kode berikut. Di sini, simbol '*' digunakan untuk membaca semua nilai string dari array. Perulangan for pertama digunakan untuk menampilkan nilai larik dalam beberapa baris dan perulangan for kedua digunakan untuk menampilkan nilai larik dalam satu baris.

#!/bin/bash

#Deklarasikan array string
BahasaArray=('PHP' 'Jawa' 'C #' 'C++' 'VB.Net' 'Python' 'Perl')

# Cetak nilai array dalam baris
dibuang 'Cetak setiap elemen di baris baru'
untukval1di dalam ${LanguageArray[*]};melakukan
dibuang $ val1
selesai

dibuang ''

# Cetak nilai array dalam satu baris
dibuang 'Cetak semua elemen dalam satu baris'
untukval2di dalam '${LanguageArray[*]}';melakukan
dibuang $val2
selesai
dibuang ''

Keluaran:

$pestafor_list5.sh

Contoh-6: Iterasi nilai string yang dipisahkan koma

Buat file bash baru bernama ' for_list6.sh’ dengan kode berikut. Di Sini, koma (,) digunakan untuk membagi nilai string. IFS variabel digunakan untuk mengatur pemisah bidang.

#!/bin/bash
Daftar Data=' HTML5, CCS3, BootStrap, JQuery '
Pemisah_bidang=$IFS

# atur koma sebagai pemisah bidang internal untuk daftar string
IFS=,
untukjamdi dalam $Daftar Data;
melakukan
dibuang $ jam
selesai

IFS=$Field_Separator

Keluaran:

$pestafor_list6.sh

Contoh-7: Membaca beberapa array string secara bersamaan

Buat file bash bernama ' for_list7.sh ' dan tambahkan skrip berikut. Dalam contoh ini, dua larik string didefinisikan dan digabungkan ke dalam larik lain. Perulangan for bagian luar digunakan untuk membaca larik gabungan dan perulangan for bagian dalam digunakan untuk membaca setiap larik bagian dalam.

#! /bin/sh
str_array1=('Magento 2.2.4' 'WooCommerce')
str_array2=('Penyala Kode' 'Laravel')
menggabungkan=(str_array1 str_array2)
untukdikeloladi dalam ${gabungkan[@]}
melakukan
evaluasi 'untuk nilai dalam '${'$arItem'[@]}';lakukan echo '$val';selesai'
selesai

Keluaran:

$pestafor_list7.sh

Contoh-8: Menggunakan pola untuk membaca daftar string

Buat file bash baru bernama for_list8.sh dengan kode berikut. Di Sini, '/, /' pattern digunakan untuk membagi nilai string berdasarkan koma.

#! /bin/sh

# Tentukan daftar variabel string
stringDaftar=WordPress,Joomla,Magento

# Gunakan koma sebagai pemisah dan terapkan sebagai pola
untukjamdi dalam ${stringList//,/ }
melakukan
dibuang $ jam
selesai

Keluaran:

$pestafor_list8.sh

Semoga, contoh tutorial ini akan membantu Anda memahami penggunaan untuk lingkaran untuk mengulangi daftar string, untuk video tentang topik ini, lihat di bawah: