GNU/Linux >> Belajar Linux >  >> Linux

Ekspresi Urutan Bash (Rentang)

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 dan END dapat berupa bilangan bulat positif atau karakter tunggal.
  • START dan END nilai wajib dan dipisahkan dengan dua titik .. , tanpa spasi di antaranya.
  • INCREMENT nilai adalah opsional. Jika ada, harus dipisahkan dari END 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 dan END , 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.


Linux
  1. Bagaimana Cara Membaca String Sebagai Angka Hex Di Bash?

  2. Bash:Ekspresi Reguler Dalam Substitusi?

  3. Angka acak antara rentang di shell

  1. Kesalahan Skrip Bash:Ekspresi Integer Diharapkan?

  2. Tingkatkan Nomor Bangun Di Bash?

  3. rentang nomor ekstrak grep

  1. Bash + Verifikasi Nama Dengan Ekspresi Reguler?

  2. 6 Contoh Ekspresi Kondisional Bash ( -e, -eq, -z, !=, [, [[ ..)

  3. Bagaimana cara menguji apakah suatu variabel adalah angka di Bash?