Trong bài viết này tôi xin giới thiệu đến các bạn những tinh năng của BASH shell trong Linux. Mở rộng ký tự thay thế Ví dụ
Trang 1Các Lệnh Căn Bản Trong Linux (Phân IID)
Trong bài viết này tôi xin giới thiệu đến các bạn những tinh năng của
BASH shell trong Linux
Mớ rộng ký tự thay thế
= Tên file hoặc thư mục làm tham số dòng lệnh có
thể ở dạng không tường minh
= Dung ky tu thay thế cho toàn bộ hoặc một phần của tên
* tương ứng mọi chuỗi, kể cả chuỗi rỗng
? tương ứng một ký tự đơn
[ ] tương ứng một trong các ký tự bên trong ngoặc [!/^]_ không tương ứng với một trong các ký tự
bên trong ngoặc
\ loại bỏ ý nghĩa đặc biệt của các ký tự *,?,
Ví dụ về ký tự thay thế
Trang 2Is a* liệt kế tất cả các tên bắt đầu bằng `*a”
lsa?.txt liệt kê tất cả tên dạng a?.txt với ? là ky tự bat ky
Is [aei]* liệt kê tất cả các tên bắt đầu bằng a,e, hoặc ¡
Is [a-d]*[0-9] liệt kê tất cả tên bắt đầu từ a đến d và kết
thúc tử 0 đến 9
Is [IL-T]* liệt kê tất cả các tên không bằng đầu từ L đến T
Tự động điền dòng lệnh
Trang 3Nhấn <Tab> để tự động điền đây đủ dòng lệnh
= username, hostname, command, filename
a lit ké tat cả khả năng có thể
$ cd /usr/lo<Tab> (/usr/local)
$ cp<Tab><Tab>
cp cpp cpio cproto
S$ cd dir<Tab><Tab>
Lénh sw
Trang 4Danh sách các lệnh đã thực thi lưu trong
_=/.bash_history”
m ^P, <Up> lệnh kế trước
m ^N,<Down> lệnh kế sau
m history: in ra danh sách các lệnh đã thực thi
$ history
1 clear
2 ca /
3 ls
4 mkdir /tmp/dirl
= !n: thuc thi lai dong lénh thu’ n
m Istring: thực thi lai dòng lệnh ngay trước đó bat
dau bang “string”
Định hướng lại xuất/nhập
Trang 5= Chi s6 xuất nhập chuẩn
* Stdin 0
* Stdout 1
* Stderr 2
< định hướng lại nhập
> định hướng lại xuất (overwrite)
>> định hướng lại xuất (append)
2> định hướng lại báo lỗi (overwrite) 2>> định hướng lại báo lỗi (append) 2>&1 định hướng lại lỗi/xuất chung
Sử dụng định hướng lại
Š 1s -la ~ > homelist.txt
$ cat < homelist.txt
S$ ls -1 ~/dirl >> homelist.txt
Š 1s -1R /etc 2>/dev/null
Š 1s -1R /var > varlist.txt 2>&1
(<=> $ ls -1R /var &> varlist.txt)
Trang 6Ong lệnh(pipe)
=m Xuất của lệnh trước là nhập của lệnh sau trong
ống lệnh
= Ký hiệu ống lénh: “|”
$ ls -la ~ | less
$ cat /etc/profile | more