Bài giảng Hệ điều hành UNIX-Linux: Chương 8 - Nguyễn Trí Thành
Số trang: 38
Loại file: pdf
Dung lượng: 326.93 KB
Lượt xem: 14
Lượt tải: 0
Xem trước 4 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương 8 của bài giảng Hệ điều hành UNIX-Linux trình bày về lập trình Shell. Trong chương này cung cấp cho người học một số nội dung như: Chương trình shell, trình soạn thảo văn bản trong Linux, các loại shell, các ký hiệu đặc biệt trong shell, sử dụng biến trong shell,... Mời các bạn cùng tham khảo để nắm bắt các nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ điều hành UNIX-Linux: Chương 8 - Nguyễn Trí Thành Hệ ñiều hành UNIX-Linux Chương 8. Lập trình Shell Unix operating system - Nguyen Tri Thanh - Sep-10 1 Chương trình shell Chương trình shell là một tập hợp các câu lệnh viết trong một file text Nó giống chương trình .bat trong MSDOS nhưng có sức mạnh lớn hơn nhiều Chương trình shell có thể nhận dữ liệu từ người dùng, từ file và in kết quả ra màn hình Có thể dùng ñể tạo ra một lệnh riêng cho mình Shell giúp tiết kiệm thời gian ñể làm các công việc hàng ngày Các bước ñể tạo ra một chương trình shell Sử dụng một chương trình soạn thảo text ñể tạo ra một file chương trình Thay ñổi thuộc tính của file vừa tạo ra thêm thuộc tính khả thi: chmod +x ./script.sh Có thể chạy luôn chương trình bằng lệnh: sh script.sh Các chương trình shell nên ñặt ñuôi là .sh 2 Unix operating system - Nguyen Tri Thanh - Sep-10 Trình soạn thảo văn bản trong Linux • Trình soạn thảo vim Unix operating system - Nguyen Tri Thanh - Sep-10 3 Trình soạn thảo văn bản trong Linux • Trình soạn thảo của mc Unix operating system - Nguyen Tri Thanh - Sep-10 4 Các loại shell Muốn xem các loại shell có trong hệ thống ta sử dụng lệnh: cat /etc/shells Muốn xem shell hiện tại: echo $SHELL Phần này chỉ ñề cập ñến lập trình shell trong bash Unix operating system - Nguyen Tri Thanh - Sep-10 5 Các ký hiệu ñặc biệt trong shell Khi ñặt tên biến cần tránh xung ñột với các ký tự ñặc biệt này Unix operating system - Nguyen Tri Thanh - Sep-10 6 Sử dụng biến trong shell Biến hệ thống ñược Linux tạo ra và quản lý (CHỮ IN HOA) Biến người dùng: ñược người dùng tạo ra và quản lý (chữ thường) Unix operating system - Nguyen Tri Thanh - Sep-10 7 Quy tắc ñặt tên biến Tên biến phải bắt ñầu với một ký tự chữ cái hoặc dấu gạch dưới (_), tiếp theo là một hoặc một số ký tự chữ hoặc số Biến ñược khởi tạo khi ta gán giá trị cho biến Không thêm các dấu cách vào trước và sau dấu gán, khi gán giá trị cho biến Biến trong Linux phân biệt chữ HOA thường Tìm các biến hợp lệ và khong hợp lệ: no=10 new_variable=“Test” number= 10 1stnumber=10 Truy cập giá trị của một biến ta dùng ký tự $ trước tên biến, xóa 1 biến sử dụng lệnh unset var echo $new_variable Lệnh echo [tùy chọn] [chuỗi, biến] dùng ñể hiển thị văn bản hoặc giá trị của biến ra màn hình Tùy chọn: -n không hiển thị ký hiệu xuống dòng, -e hiển thị các ký tự ẩn ñặc biệt sau trong chuỗi Unix operating system - Nguyen Tri Thanh - Sep-10 8 Trích dẫn (quoting) Trích dẫn là cách bao quanh một chuỗi bằng cặp dấu nháy Cho phép một số ký tự ñặc biệt giữ nguyên như các ký tự bình thường Có 2 loại trích dẫn mạnh (‘ …’) và trích dẫn yếu (“ … ”) Trích dẫn yếu vẫn biên dịch các biến trong chuỗi echo “Giá trị của biến là: $var” Trích dẫn mạnh bảo toàn toàn bộ các ký tự trong chuỗi echo ‘Giá trị của tham số ñầu tiên là: $var’ → Giá trị của tham số ñầu tiên là: $var ls -l '[Vv]*‘ → ls: [Vv]*: No such file or directory Unix operating system - Nguyen Tri Thanh - Sep-10 9 Tính toán số học trên các biến Tính toán trong shell ñược thực hiện với các ñối số nguyên Các phép toán gồm có: cộng (+), trừ (-), nhân (*), chia (/), mod (%) Tính toán trên shell có dạng: `expr ` Ví dụ var1=10 var2=20 sum=`expr $var1 + $var2 ` product=`expr $var1 \* $var2 ` echo “Tổng của $var1 và $var2 là: $sum, tích của chúng là $product” Unix operating system - Nguyen Tri Thanh - Sep-10 10 Tham số dòng lệnh trong chương trình shell Là tham số ñược truyền vào cho chương trình trên dòng lệnh Dùng ñể thông báo cho chương trình các tùy chọn, file cần xử lý rm test.txt ls –a /usr/local myshell 10 30 Truy cập các tham số dòng lệnh thông qua các biến hệ thống $1, …, $9 echo $1 # hiển thị 10 echo $2 # hiển thị 30 Tổng số tham số trả lại qua biến $#, toàn bộ tham số thông qua $* hay $@, biến $0 trả lại tên chương trình echo Total number of command line argument are $#“ echo $0 is script name“ echo $1 is first argument“ echo $2 is second argument“ echo All of them are :- $* or $@ Unix operating system - Nguyen Tri Thanh - Sep-10 11 Tham số dòng lệnh trong chương trình shell (tiếp) Làm sao truy cập các tham số có số thứ tự > 9? Truy xuất thông qua $@ hay $* Dùng lệnh shift shift sẽ gán lại giá trị của các tham số vị trí bằng cách dịch trái giá trị của danh sách các biến $1 Giá trị logic trong shell Ngược với C hay các ngôn ngữ lập trình thông dụng, trong shell giá trị 0 nghĩa là true còn giá trị khác 0 là false Giá trị logic là một giá trị quan trọng trong các cấu trúc ñiều khiển Giá trị logic trong bc Unix operating system - Nguyen Tri Thanh - Sep-10 13 Cấu trúc chương trình shell Là một tập hợp các lệnh và các cấu trúc ñiều khiển Mỗi lệnh ñược viết trên 1 dòng Chú thích trong chương trình là phần nằm sau dấu # Dòng chú thích ñầu tiên trong file chương t ...
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ điều hành UNIX-Linux: Chương 8 - Nguyễn Trí Thành Hệ ñiều hành UNIX-Linux Chương 8. Lập trình Shell Unix operating system - Nguyen Tri Thanh - Sep-10 1 Chương trình shell Chương trình shell là một tập hợp các câu lệnh viết trong một file text Nó giống chương trình .bat trong MSDOS nhưng có sức mạnh lớn hơn nhiều Chương trình shell có thể nhận dữ liệu từ người dùng, từ file và in kết quả ra màn hình Có thể dùng ñể tạo ra một lệnh riêng cho mình Shell giúp tiết kiệm thời gian ñể làm các công việc hàng ngày Các bước ñể tạo ra một chương trình shell Sử dụng một chương trình soạn thảo text ñể tạo ra một file chương trình Thay ñổi thuộc tính của file vừa tạo ra thêm thuộc tính khả thi: chmod +x ./script.sh Có thể chạy luôn chương trình bằng lệnh: sh script.sh Các chương trình shell nên ñặt ñuôi là .sh 2 Unix operating system - Nguyen Tri Thanh - Sep-10 Trình soạn thảo văn bản trong Linux • Trình soạn thảo vim Unix operating system - Nguyen Tri Thanh - Sep-10 3 Trình soạn thảo văn bản trong Linux • Trình soạn thảo của mc Unix operating system - Nguyen Tri Thanh - Sep-10 4 Các loại shell Muốn xem các loại shell có trong hệ thống ta sử dụng lệnh: cat /etc/shells Muốn xem shell hiện tại: echo $SHELL Phần này chỉ ñề cập ñến lập trình shell trong bash Unix operating system - Nguyen Tri Thanh - Sep-10 5 Các ký hiệu ñặc biệt trong shell Khi ñặt tên biến cần tránh xung ñột với các ký tự ñặc biệt này Unix operating system - Nguyen Tri Thanh - Sep-10 6 Sử dụng biến trong shell Biến hệ thống ñược Linux tạo ra và quản lý (CHỮ IN HOA) Biến người dùng: ñược người dùng tạo ra và quản lý (chữ thường) Unix operating system - Nguyen Tri Thanh - Sep-10 7 Quy tắc ñặt tên biến Tên biến phải bắt ñầu với một ký tự chữ cái hoặc dấu gạch dưới (_), tiếp theo là một hoặc một số ký tự chữ hoặc số Biến ñược khởi tạo khi ta gán giá trị cho biến Không thêm các dấu cách vào trước và sau dấu gán, khi gán giá trị cho biến Biến trong Linux phân biệt chữ HOA thường Tìm các biến hợp lệ và khong hợp lệ: no=10 new_variable=“Test” number= 10 1stnumber=10 Truy cập giá trị của một biến ta dùng ký tự $ trước tên biến, xóa 1 biến sử dụng lệnh unset var echo $new_variable Lệnh echo [tùy chọn] [chuỗi, biến] dùng ñể hiển thị văn bản hoặc giá trị của biến ra màn hình Tùy chọn: -n không hiển thị ký hiệu xuống dòng, -e hiển thị các ký tự ẩn ñặc biệt sau trong chuỗi Unix operating system - Nguyen Tri Thanh - Sep-10 8 Trích dẫn (quoting) Trích dẫn là cách bao quanh một chuỗi bằng cặp dấu nháy Cho phép một số ký tự ñặc biệt giữ nguyên như các ký tự bình thường Có 2 loại trích dẫn mạnh (‘ …’) và trích dẫn yếu (“ … ”) Trích dẫn yếu vẫn biên dịch các biến trong chuỗi echo “Giá trị của biến là: $var” Trích dẫn mạnh bảo toàn toàn bộ các ký tự trong chuỗi echo ‘Giá trị của tham số ñầu tiên là: $var’ → Giá trị của tham số ñầu tiên là: $var ls -l '[Vv]*‘ → ls: [Vv]*: No such file or directory Unix operating system - Nguyen Tri Thanh - Sep-10 9 Tính toán số học trên các biến Tính toán trong shell ñược thực hiện với các ñối số nguyên Các phép toán gồm có: cộng (+), trừ (-), nhân (*), chia (/), mod (%) Tính toán trên shell có dạng: `expr ` Ví dụ var1=10 var2=20 sum=`expr $var1 + $var2 ` product=`expr $var1 \* $var2 ` echo “Tổng của $var1 và $var2 là: $sum, tích của chúng là $product” Unix operating system - Nguyen Tri Thanh - Sep-10 10 Tham số dòng lệnh trong chương trình shell Là tham số ñược truyền vào cho chương trình trên dòng lệnh Dùng ñể thông báo cho chương trình các tùy chọn, file cần xử lý rm test.txt ls –a /usr/local myshell 10 30 Truy cập các tham số dòng lệnh thông qua các biến hệ thống $1, …, $9 echo $1 # hiển thị 10 echo $2 # hiển thị 30 Tổng số tham số trả lại qua biến $#, toàn bộ tham số thông qua $* hay $@, biến $0 trả lại tên chương trình echo Total number of command line argument are $#“ echo $0 is script name“ echo $1 is first argument“ echo $2 is second argument“ echo All of them are :- $* or $@ Unix operating system - Nguyen Tri Thanh - Sep-10 11 Tham số dòng lệnh trong chương trình shell (tiếp) Làm sao truy cập các tham số có số thứ tự > 9? Truy xuất thông qua $@ hay $* Dùng lệnh shift shift sẽ gán lại giá trị của các tham số vị trí bằng cách dịch trái giá trị của danh sách các biến $1 Giá trị logic trong shell Ngược với C hay các ngôn ngữ lập trình thông dụng, trong shell giá trị 0 nghĩa là true còn giá trị khác 0 là false Giá trị logic là một giá trị quan trọng trong các cấu trúc ñiều khiển Giá trị logic trong bc Unix operating system - Nguyen Tri Thanh - Sep-10 13 Cấu trúc chương trình shell Là một tập hợp các lệnh và các cấu trúc ñiều khiển Mỗi lệnh ñược viết trên 1 dòng Chú thích trong chương trình là phần nằm sau dấu # Dòng chú thích ñầu tiên trong file chương t ...
Tìm kiếm theo từ khóa liên quan:
Hệ điều hành Hệ điều hành UNIX-Linux Bài giảng Hệ điều hành UNIX-Linux Lập trình Shell Chương trình shell Các loại shellTài liệu liên quan:
-
Giáo trình Lý thuyết hệ điều hành: Phần 1 - Nguyễn Kim Tuấn
110 trang 456 0 0 -
173 trang 277 2 0
-
175 trang 275 0 0
-
Giáo trình Nguyên lý các hệ điều hành: Phần 2
88 trang 274 0 0 -
Giáo trình Nguyên lý hệ điều hành (In lần thứ ba): Phần 1 - PGS.TS. Hà Quang Thụy
98 trang 252 0 0 -
Đề tài nguyên lý hệ điều hành: Nghiên cứu tìm hiểu về bộ nhớ ngoài trong hệ điều hành Linux
19 trang 247 0 0 -
Bài thảo luận nhóm: Tìm hiểu và phân tích kiến trúc, chức năng và hoạt động của hệ điều hành Android
39 trang 233 0 0 -
Giáo trình Hệ điều hành: Phần 2
53 trang 222 0 0 -
Phần III: Xử lý sự cố Màn hình xanh
3 trang 206 0 0 -
Bài thuyết trình nhóm môn Hệ điều hành: Tìm hiểu về cách quản lý tệp
17 trang 201 0 0