1
3
${myfile##*/} = ide.txt
basename $myfile
= ide.txt
${myfile%/*}
= /usr/src/linux/Documentation
dirname $myfile
= /usr/src/linux/Documentation
Để minh hoạ về các toán tử pattern-matching và thay thế, lệnh thay thế mỗi dấu hai
chấm trong biến môi trường $PATH bằng một dòng mới, kết quả hiển thị đường dẫn rất dễ
đọc (ví dụ này sẽ sai nếu ta không có bash phiên bản 2.0 hoặc mới hơn):
$ echo –e ${PATH//:/\\n}
/usr/local/bin
/bin
/usr/bin
/usr/X11R6/bin
/home/kwall/bin
/home/wall/wp/wpbin
Các toán tử so sánh chuỗi
kiểm tra
Điều kiện thực
str1 = str2
str1 bằng str2
str1 != str2
str1 khác str2
-n str
str có độ dài lớn hơn 0 (khác null)
-z str
str có độ dài bằng 0 (null)
Toán tử sánh chuỗi của bash
Các toán tử so sánh số học
kiểm tra
Điều kiện thực
-eq
bằng
-ge
lớn hơn hoặc bằng
-gt
lớn hơn
-le
nhỏ hơn hoặc bằng
-lt
nhỏ hơn
-ne
khác
Các cách test số nguyên của bash
7.2.2. Điều khiển luồng
Các cấu trúc điều khiển luồng của bash, nó bao gồm:
•
if – Thi hành một hoặc nhiều câu lệnh nếu có điều kiện là true hoặc false.
•
for – Thi hành một hoặc nhiều câu lệnh trong một số cố định lần.
•
while – Thi hành một hoặc nhiều câu lệnh trong khi một điều kiện nào đó là
true hoặc false.
•
until – Thi hành một hoặc nhiều câu lệnh cho đến khi một điều kiện nào đó
trở thành true hoặc false.
•
case – Thi hành một hoặc nhiều câu lệnh phụ thuộc vào giá trị của biến.
•
select – Thi hành một hoặc nhiều câu lệnh dựa trên một khoảng tuỳ chọn của
người dùng.