Trong bài viết này, chúng ta sẽ tìm hiểu những kiến thức cơ bản về biểu thức chuỗi trong Bash.
Biểu thức chuỗi Bash tạo ra một dải số nguyên hoặc ký tự bằng cách xác định điểm bắt đầu và điểm kết thúc của dải ô. Nó thường được sử dụng kết hợp với for các vòng lặp.
Biểu thức trình tự Bash
Biểu thức dãy có dạng sau:
{START..END[..INCREMENT]}
- Biểu thức bắt đầu bằng dấu ngoặc nhọn mở và kết thúc bằng dấu ngoặc nhọn đóng.
STARTvàENDcó thể là số nguyên dương hoặc ký tự đơn.- Các giá trị
STARTvàENDgiá trị là bắt buộc và được phân tách bằng hai dấu chấm.., không có khoảng cách giữa chúng. - Các giá trị
INCREMENTlà không bắt buộc. Nếu có, nó phải được phân tách khỏi giá trịENDbằng hai dấu chấm.., không có khoảng cách giữa chúng. Khi các ký tự được đưa ra, biểu thức được mở rộng theo thứ tự từ vựng. - Biểu thức mở rộng đến từng số hoặc ký tự giữa
STARTvàEND, bao gồm cả các giá trị được cung cấp. - Một biểu thức được tạo không chính xác được giữ nguyên.
Đây là biểu hiện trong hành động:
echo {0..3}
Khi không có INCREMENT tăng mặc định là 1:
0 1 2 3
Bạn cũng có thể sử dụng các ký tự khác. Ví dụ dưới đây in bảng chữ cái:
echo {a..z}
Output:
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
Nếu START giá trị lớn hơn END thì biểu thức sẽ tạo ra một phạm vi giảm:
for i in {3..0}
do
echo "Number: $i"
done
Output:
Number: 3 Number: 2 Number: 1 Number: 0
Khi một INCREMENT được đưa ra, nó được sử dụng làm bước giữa mỗi mục được tạo:
for i in {0..20..5}
do
echo "Number: $i"
done
Mỗi số được tạo lớn hơn số đứng trước 5:
Number: 0 Number: 5 Number: 10 Number: 15 Number: 20
Khi sử dụng số nguyên để tạo một phạm vi, bạn có thể thêm một đầu 0 vào để buộc mỗi số phải có cùng độ dài. Để nguyên pad tạo ra với số không hàng đầu tiền tố hoặc START và END với một số không:
for i in {00..3}
do
echo "Number: $i"
done
Output:
Number: 00 Number: 01 Number: 02 Number: 03
Biểu thức có thể được thêm tiền tố hoặc hậu tố với các ký tự khác:
echo A{00..3}B
Output:
A00B A01B A02B A03B
Nếu biểu thức không được xây dựng chính xác, nó sẽ không thay đổi:
echo {0..}
Output:
0..
Phần kết luận
Biểu thức chuỗi Bash cho phép bạn tạo một loạt các số nguyên hoặc ký tự.
Nếu bạn có bất kỳ câu hỏi hoặc phản hồi nào, vui lòng để lại bình luận.
