1
2
echo –e
“inside cntparm $# parms: $*”
}
cntparm
‘$*’
cntparm
‘$@’
echo –e
“outside cntparm $* parms\n”
echo –e
“outside cntparm $@ parms\n”
Khi chạy chương trình này ta sẽ thu được kết quả:
$./testparm.sh Kurt Roland Wall
inside cntparm 1 parms: Kurt Roland Wall
inside cntparm 3 parms: Kurt Roland Wall
outside cntparm: Kurt Roland Wall
outside cntparm: Kurt Roland Wall
Trong dòng thứ nhất và thứ 2 ta thấy kết quả có sự khác nhau, ở dòng thứ nhất biến
“$*” trả về tham biến vị trí dưới dạng một xâu đơn, vì thế cntparm báo cáo một tham biến
đơn. Dòng thứ hai gọi cntparm, trả về đối số dòng lệnh của là 3 xâu độc lập, vì thế cntparm
báo cáo ba tham biến.
c. Các ký tự đặc biệt trong bash
Ký tự
Mô tả
<
>
(
)
|
\
&
{
}
~
`
;
#
‘
“
$
*
?
Định hướng đầu vào
Định hướng đầu ra
Bắt đầu subshell
Kết thúc subshell
Ký hiệu dẫn
Dùng để hiện ký tự đặc biệt
Thi hành lệnh chạy ở chế độ ngầm
Bắt đầu khối lệnh
Kết thúc khối lệnh
Thư mục home của người dùng hiện tại
Thay thế lệnh
Chia cắt lệnh
Lời chú giải
Trích dẫn mạnh
Trích dẫn yếu
Biểu thức biến
Ký tự đại diện cho chuỗi
Ký tự đại diện cho một ký tự
Các ký tự đặc biệt của bash
Dấu chia cắt lệnh, ; , cho phép thực hiện những lệnh bash phức tạp đánh trên một dòng.
Nhưng quan trọng hơn, nó là kết thúc lệnh theo lý thuyết POSIX.
Ký tự chú giải, # , khiến bash bỏ qua mọi ký tự từ đó cho đến hết dòng. điểm kháQc nhau
giữa các ký tự trích dẫn mạnh và trích dẫn yếu, ‘ và “, tương ứng là: trích dẫn mạnh bắt
bash hiểu tất cả các ký tự theo nghĩa đen; trích dẫn yếu chỉ bảo hộ cho một vài ký tự đặc
biệt của bash .