Cara Menggunakan Array pada Bash
Array merupakan salah satu tipe struktur data yang paling sering digunakan dalam dunia perkodingan. Dengan array ini, kalian bisa menyimpan banyak item di dalam satu variabel.
Panduan ini akan membahas tentang penggunaan array pada Bash dan operasi-operasi yang bisa dilakukan pada array Bash.
Mendeklarasikan Array
Syntax berikut ini berfungsi untuk mendeklarasikan array pada Bash:
fruits=("Rambutan" "Banana" "Durian" "Salak")
Berbeda dengan bahasa pemrograman lain, ketika mendeklarasikan array pada Bash, tidak boleh ada spasi di antara nama variabel, simbol =
, dan isi variabelnya.
Jadi, syntax di bawah ini tidak valid untuk mendeklarasikan array pada Bash:
fruits = ("Rambutan" "Banana" "Durian" "Salak")
Mengakses Item
Untuk mengakses array pada Bash, kalian bisa mengakses itemnya dengan indeks bernilai positif dan negatif.
Misalnya, untuk mengakses item dari array dari depan, kalian harus menggunakan indeks bernilai positif dan urutan indeksnya dimulai dari 0
.
echo "${fruits[1]}" # Banana
Gunakan indeks bernilai negatif untuk mengakses item array dari belakang dan urutannya harus dimulai dari -1
.
echo "${fruits[-2]}" # Durian
Mengubah Nilai Item
Kalian bisa mengubah nilai item dari array pada Bash dengan syntax seperti ini:
fruits[0]="Nanas"
Pastikan jika nilai item di indeks pertama telah berubah:
echo "${Fruits[@]}" # Nanas Banana Durian Salak
Menghitung Jumlah Item
Syntax berikut ini berfungsi untuk menghitung jumlah item pada array Bash:
echo "${#fruits[@]}" # 4
Menambahkan Item
Menambahkan item ke awalan array:
fruits=("Melon" "${fruits[@]}")
Menambahkan item ke akhiran array:
fruits=("${fruits[@]}" "Melon")
Atau bisa juga menggunakan syntax ini untuk menambahkan item ke akhiran array:
fruits+=("Melon")
Menghapus Item
Kalian bisa menggunakan fitur bawaan dari Bash, yaitu unset
untuk menghapus item dari sebuah Array.
Misalnya, syntax berikut ini berfungsi untuk menghapus item terakhir pada array:
unset fruits[-1]
Sedangkan untuk menghapus item pertama pada array:
unset fruits[0]
Memotong Array
Contoh syntax berikut ini berfungsi untuk memotong array dengan mengambil dua 2
item yang dimulai dari indeks 1
.
echo "${fruits[@]:1:2}" # Banana Durian
Menggunakan Perulangan
Kalian bisa melakukan perulangan pada Array Bash menggunakan for
.
for i in "${fruits[@]}"; do
echo "$i"
done
Membuat Program Sederhana
Pada bagian ini, kita akan membuat program sederhana untuk mengunduh beberapa file dengan memanfaatkan array pada Bash.
Pertama, buat file list.txt
untuk menyimpan daftar URL.
$ nano list.txt
Isi file tersebut dengan daftar URL yang akan diunduh.
URL1
URL2
URL3
Kemudian buat file batch_download.sh
untuk menyimpan skrip Bash.
$ nano batch_download.sh
Isi file tersebut dengan skrip di bawah ini:
#!/bin/bash
list=($(cat list.txt))
for i in "${list[@]}"; do
echo "sedang mengunduh $i"
curl -LOJ "$i"
done
Simpan, kemudian beri permission agar bisa dieksekusi.
$ chmod +x batch_download.sh
Terakhir, jalankan skrip batch_download.sh
$ ./batch_download.sh