Dalam artikel ini, kita akan membahas dasar-dasar ekspresi urutan di Bash.
Ekspresi urutan Bash menghasilkan rentang bilangan bulat atau karakter dengan mendefinisikan titik awal dan titik akhir rentang. Biasanya digunakan dalam kombinasi dengan for
loop.
Ekspresi Urutan Bash #
Ekspresi urutan mengambil bentuk berikut:
{START..END[..INCREMENT]}
- Ekspresi dimulai dengan kurung kurawal pembuka dan diakhiri dengan kurung kurawal penutup.
START
danEND
dapat berupa bilangan bulat positif atau karakter tunggal.START
danEND
nilai wajib dan dipisahkan dengan dua titik..
, tanpa spasi di antaranya.INCREMENT
nilai adalah opsional. Jika ada, harus dipisahkan dariEND
nilai dengan dua titik..
, tanpa spasi di antara keduanya. Ketika karakter diberikan, ekspresi diperluas dalam urutan leksikografis.- Ekspresi diperluas ke setiap angka atau karakter di antara
START
danEND
, termasuk nilai yang diberikan. - Ekspresi yang salah bentuk dibiarkan tidak berubah.
Berikut ekspresi beraksi:
echo {0..3}
Bila tidak ada INCREMENT
asalkan kenaikan default adalah 1:
0 1 2 3
Anda juga dapat menggunakan karakter lain. Contoh di bawah ini mencetak alfabet:
echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
Jika START
nilainya lebih besar dari END
maka ekspresi akan membuat rentang yang mengurangi:
for i in {3..0}
do
echo "Number: $i"
done
Number: 3
Number: 2
Number: 1
Number: 0
Saat INCREMENT
diberikan, ini digunakan sebagai langkah antara setiap item yang dihasilkan:
for i in {0..20..5}
do
echo "Number: $i"
done
Setiap nomor yang dihasilkan lebih besar dari nomor sebelumnya dengan 5:
Number: 0
Number: 5
Number: 10
Number: 15
Number: 20
Saat menggunakan bilangan bulat untuk menghasilkan rentang, Anda dapat menambahkan 0
leading di depan untuk memaksa setiap angka memiliki panjang yang sama. Untuk mengisi bilangan bulat yang dihasilkan dengan awalan nol di depan, START
dan END
dengan nol:
for i in {00..3}
do
echo "Number: $i"
done
Number: 00
Number: 01
Number: 02
Number: 03
Ekspresi dapat diawali atau diakhiri dengan karakter lain:
echo A{00..3}B
A00B A01B A02B A03B
Jika ekspresi tidak dibangun dengan benar, ekspresi tersebut dibiarkan tidak berubah:
echo {0..}
0..
Kesimpulan #
Ekspresi urutan Bash memungkinkan Anda menghasilkan rentang bilangan bulat atau karakter.
Jika Anda memiliki pertanyaan atau masukan, jangan ragu untuk memberikan komentar.