Halo, pada seri belajar bash scripting kali ini kita akan membahas tentang array pada Bash. Array adalah struktur data yang berguna untuk menyimpan sejumlah data yang serupa dalam satu variabel. Pada Bash, terdapat beberapa jenis array yang dapat digunakan seperti Indexed Array, Associative Array, dan Multidimensional Array.
Dalam postingan ini, kita akan membahas pengertian array pada Bash serta beberapa jenis array dan operasi yang dapat digunakan untuk memanipulasi array tersebut.
Jadi, jika kamu ingin belajar lebih lanjut tentang array pada Bash, tetaplah disini dan ikuti seluruh seri belajar bash scripting yang akan membantumu memahami Bash secara lebih mendalam.
Penjelasan
Array pada Bash adalah sebuah variabel yang dapat menampung beberapa nilai dalam satu variabel. Array ini mirip dengan array yang ada pada bahasa pemrograman lain seperti C atau Python. Namun, di Bash array tidak memiliki tipe data yang spesifik, sehingga bisa menampung nilai dengan tipe data yang berbeda-beda seperti angka, string, atau bahkan variabel lain.
Untuk membuat sebuah array pada Bash, kita bisa menggunakan sintaksis sebagai berikut:
nama_array=(elemen1 elemen2 elemen3 ...)
Contoh penggunaan:
# Mendefinisikan array dengan nama buah
buah=(apel jeruk pisang mangga)
# Mengakses elemen array
echo ${buah[0]} # Output: apel
echo ${buah[2]} # Output: pisang
# Mengambil semua elemen array
echo ${buah[@]} # Output: apel jeruk pisang mangga
Array pada Bash juga dapat diakses menggunakan perulangan. Contohnya sebagai berikut:
# Melakukan perulangan pada semua elemen array
for elemen in ${buah[@]}
do
echo $elemen
done
Dalam Bash juga ada beberapa perintah atau operasi yang dapat digunakan untuk memanipulasi array, seperti menambahkan elemen baru pada array, menghapus elemen, atau menghitung jumlah elemen dalam array. Contoh penggunaannya seperti berikut:
# Menambahkan elemen baru pada array
buah+=(durian)
echo ${buah[@]} # Output: apel jeruk pisang mangga durian
# Menghapus elemen pada array
unset buah[1] # menghapus elemen ke-2
echo ${buah[@]} # Output: apel pisang mangga durian
# Menghitung jumlah elemen dalam array
echo ${#buah[@]} # Output: 4
Semoga penjelasan ini dapat membantu Anda memahami tentang array pada Bash.
Macam-Macam Array Pada Bash
Berikut adalah beberapa jenis Bash Array yang dapat digunakan:
1. Indexed Array
Indexed Array adalah jenis array yang elemennya diakses menggunakan indeks numerik yang dimulai dari 0. Contoh:
# Mendefinisikan Indexed Array
array=(elemen1 elemen2 elemen3)
# Mengakses elemen pada Indexed Array
echo ${array[0]} # Output: elemen1
echo ${array[1]} # Output: elemen2
echo ${array[2]} # Output: elemen3
2. Associative Array
Associative Array adalah jenis array yang elemennya diakses menggunakan key atau nama, bukan indeks numerik. Contoh:
# Mendefinisikan Associative Array
declare -A array
array["kunci1"]="nilai1"
array["kunci2"]="nilai2"
# Mengakses elemen pada Associative Array
echo ${array["kunci1"]} # Output: nilai1
echo ${array["kunci2"]} # Output: nilai2
3. Multidimensional Array
Multidimensional Array adalah jenis array yang memiliki lebih dari satu dimensi. Dalam Bash, multidimensional array dapat diimplementasikan dengan menggunakan array dalam array. Contoh:
# Mendefinisikan Multidimensional Array
array=( (1 2 3) (4 5 6) (7 8 9) )
# Mengakses elemen pada Multidimensional Array
echo ${array[0][0]} # Output: 1
echo ${array[1][1]} # Output: 5
echo ${array[2][2]} # Output: 9
Array Operations
Berikut adalah beberapa operasi umum yang dapat digunakan untuk memanipulasi array dalam Bash:
1. Menambahkan elemen baru ke array
Untuk menambahkan elemen baru ke array, kita dapat menggunakan operator +=
. Contoh:
# Mendefinisikan Indexed Array
array=(elemen1 elemen2 elemen3)
# Menambahkan elemen baru ke array
array+=(elemen4)
# Cetak isi array
echo ${array[@]} # Output: elemen1 elemen2 elemen3 elemen4
2. Menghapus elemen dari array
Untuk menghapus elemen dari array, kita dapat menggunakan perintah unset
. Contoh:
# Mendefinisikan Indexed Array
array=(elemen1 elemen2 elemen3)
# Menghapus elemen kedua dari array
unset array[1]
# Cetak isi array
echo ${array[@]} # Output: elemen1 elemen3
3. Mengambil subset array
Untuk mengambil subset array, kita dapat menggunakan operator ${array[@]:start:count}
. Contoh:
# Mendefinisikan Indexed Array
array=(elemen1 elemen2 elemen3 elemen4 elemen5)
# Mengambil subset array dari elemen ke-2 hingga ke-4
subset=(${array[@]:1:3})
# Cetak isi subset array
echo ${subset[@]} # Output: elemen2 elemen3 elemen4
4. Menghitung jumlah elemen pada array
Untuk menghitung jumlah elemen pada array, kita dapat menggunakan operator ${#array[@]}
. Contoh:
# Mendefinisikan Indexed Array
array=(elemen1 elemen2 elemen3 elemen4 elemen5)
# Menghitung jumlah elemen pada array
jumlah=${#array[@]}
# Cetak jumlah elemen
echo $jumlah # Output: 5
5. Mengurutkan elemen pada array
Untuk mengurutkan elemen pada array, kita dapat menggunakan perintah sort
. Contoh:
# Mendefinisikan Indexed Array
array=(coba dulu array ini)
# Mengurutkan elemen pada array
sorted=($(echo ${array[@]} | tr ' ' '\n' | sort))
# Cetak isi array yang sudah diurutkan
echo ${sorted[@]} # Output: array coba dulu ini
Dengan menggunakan operasi-operasi tersebut, kita dapat memanipulasi array dalam Bash sesuai dengan kebutuhan kita.
Memasukan Fungsi / Method Kedalam Array di Bash Linux (Tips)
Sebenarnya untuk array tidak bisa menympan sebuah fungsi (sepengalaman saya), tapi ada tips & trick dari saya untuk bisa memasukan fungsi kedalam sebuah array, tapi ini punya kekurangan karna fungsi yg kita buat nanti akan di masukan menjadi string di array dan di eval
agar string di baca menjadi sebuat code perintah, Contoh:
# Mendefinisikan sebuah Indexed Array yang berisi dua fungsi dalam bentuk string
array=(
'fungsi1() { echo "Ini adalah fungsi pertama"; }'
'fungsi2() { echo "Ini adalah fungsi kedua"; }'
)
# Memanggil fungsi pertama pada array agar string di baca menjadi sebuat code perintah
eval ${array[0]}
# menjalakan fungsi
fungsi1
# Memanggil fungsi kedua pada array agar string di baca menjadi sebuat code perintah
eval ${array[1]}
# menjalakan fungsi
fungsi2
kekurangan dari ini adalah , kita tidak bisa membuat atau menggunakan fungsi yg terlalu komplek dalam array karna terbatas di penggunan tanda kutip.
Penutup
Demikianlah penjelasan mengenai array pada Bash Linux. Semoga penjelasan ini dapat membantu Anda memahami array pada Bash Linux dengan lebih baik. Teruslah belajar dan eksplorasi fitur-fitur Bash Linux lainnya untuk meningkatkan kemampuan Bash Scripting kamu jangan lupa untuk melihat Seri Belajar Bash yang lain ya.