Bài giảng Hệ điều hành Unix-Linux: Chương 7 - Đặng Thu Hiền
lượt xem 3
download
Bài giảng Hệ điều hành Unix-Linux - Chương 7 giới thiệu về lập trình shell trong hệ điều hành. Thông qua chương này, người học có thể biết được chương trình shell là gì, các loại shell, các ký hiệu đặc biệt trong shell, cách sử dụng biến trong shell,... Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Hệ điều hành Unix-Linux: Chương 7 - Đặng Thu Hiền
- Hệ iều hành UNIX-Linux Chương 7. Lập trình Shell Đặng Thu Hiền Khoa Công nghệ thông tin Trường Đại học Công nghệ Đại học Quốc gia Hà Nội 1
- Chương trình shell n Chương trình shell là một tập hợp các câu lệnh được viết trong một file text n Nó giống chương trình .bat trong MSDOS nhưng có sức mạnh lớn hơn nhiều n 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 n Có thể dùng để tạo ra một lệnh riêng cho mình n Shell giúp tiết kiệm thời gian n Các bước để tạo ra một chương trình shell n Sử dụng một chương trình soạn thảo text để tạo ra một file chương trình n 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 n Có thể chạy luôn chương trình bằng lệnh: sh script.sh n Các chương trình shell nên đặt uôi là .sh 2
- Trình soạn thảo v n bản trong Linux n Trình soạn thảo vim 3
- Cấu trúc chương trình shell n Là một tập hợp các lệnh và các cấu trúc iều khiển n Mỗi lệnh được viết trên 1 dòng n Chú thích trong chương trình là phần nằm sau dấu # n Dòng chú thích đầu tiên trong file chương trình shell sẽ báo cho hệ thống chọn shell (chương trình) nào để thực hiện chương trình (ngầm định là shell hiện tại) #!/bin/bash #!/usr/bin/perl #!/bin/csh #!/bin/rm 16
- Các loại shell n Muốn xem các loại shell có trong hệ thống ta sử dụng lệnh: cat /etc/shells n Muốn xem shell hiện tại: echo $SHELL n Phần này chỉ đề cập đến lập trình shell trong bash 4
- 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 5
- Sử dụng biến trong shell n Biến hệ thống được Linux tạo ra và quản lý (CHỮ IN HOA) n Biến người dùng: được người dùng tạo ra và quản lý (chữ thường) 6
- Danh sách một số biến hệ thống 7
- Quy tắc đặt tên biến 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ố n Biến được khởi tạo khi ta gán giá trị cho biến 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 n Biến trong Linux phân biệt chữ HOA thường n Tìm các biến hợp lệ và không hợp lệ: n no=10 n new_variable= Test n number= 10 n 1stnumber=10 8
- Truy cập và xoá biến n 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 n echo $new_variable n 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 n Tùy chọn: n -n không hiển thị ký hiệu xuống dòng, n -e hiển thị các ký tự ẩn đặc biệt sau trong chuỗi 9
- Trích dẫn (quoting) n Trích dẫn là cách bao quanh một chuỗi bằng cặp dấu nháy n Cho phép một số ký tự đặc biệt giữ nguyên như các ký tự bình thường n Có 2 loại trích dẫn mạnh ( … ) và trích dẫn yếu ( … ) n Trích dẫn mạnh bảo toàn toàn bộ các ký tự trong chuỗi n echo Giá trị của tham số đầu tiên là: $var → Giá trị của tham số đầu tiên là: $var n ls -l '[Vv]* → ls: [Vv]*: No such file or directory n Trích dẫn yếu vẫn biên dịch các biến trong chuỗi echo n var=2; Giá trị của biến là: $var ; n → Giá trị của biến là 2 10
- Tính toán số học trên các biến n Tính toán trong shell được thực hiện với các đối số nguyên n Các phép toán gồm có: cộng (+), trừ (-), nhân (*), chia (/), mod (%) n Tính toán trên shell có dạng: n `expr ` n 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 11
- Tham số dòng lệnh trong chương trình shell n Là tham số được truyền vào cho chương trình trên dòng lệnh n Dùng để thông báo cho chương trình các tùy chọn, file cần xử lý n rm test.txt n ls –a /usr/local n myshell 10 30 n Truy cập các tham số dòng lệnh thông qua các biến hệ thống $1, …, $9 n echo $1 # hiển thị 10 n echo $2 # hiển thị 30 12
- Tham số dòng lệnh trong chương trình shell n Tổng số tham số trả lại qua biến $#, n $* hoặc $@ trả lại toàn bộ tham số n 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 $@" 13
- Tham số dòng lệnh trong chương trình shell n Làm sao truy cập các tham số có số thứ tự > 9? n Truy xuất thông qua $@ hay $* n Dùng lệnh shift n 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 n $1
- Giá trị logic trong shell n 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 n Giá trị logic là một giá trị quan trọng trong các cấu trúc iều khiển 15
- Điều khiển luồng trong shell n Các câ u trúc iê u khiê n luô ng bao gô m: n 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. n for – Thi hành mọ t hoạ c nhiê u câu lẹ nh trong mọ t sô cô i nh lâ n. 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. n 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. n case – Thi hành mọ t hoạ c nhiê u câu lẹ nh phu thuọ c vào giá tri cu a biê n. n select – Thi hành mọ t hoạ c nhiê u câu lẹ nh dư a trên mọ t khoa ng tuy cho n cu a ngu ơ i dùng. 16
- Cấu trúc iều khiển if n Điều kiện if được sử dụng để đưa ra các quyết định trong chương trình shell n Nếu iều kiện được cung cấp là úng thì các lệnh trong ó được thực thi n Điều kiện là một phép so sánh giữa 2 giá trị, một lệnh kiểm tra hay kết quả trả về của 1 chương trình n Cấu trúc if điều_kiện then #Khối lệnh sẽ được thực hiện nếu điều_kiện là đúng fi 17
- Cấu trúc iều khiển if n Ví dụ: if cat $1 then echo -e "\n\nFile $1, found and successfully echoed" fi n Trong linux các lệnh thường trả về trạng thái thành công hay lỗi, nếu thành công thì trả về giá trị 0, nếu bị lỗi thì sẽ trả về mã lỗi khác 0 18
- Lệnh test hay [] n Được dùng để kiểm tra xem một biểu thức úng (0) hay sai (0) n Cú pháp n test biểu_thức hoặc [ biểu_thức] n Ví dụ: if test $1 -gt 0 then echo "$1 number is positive" fi if [ $1 -gt 0 ] then echo "$1 number is positive" fi 19
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Hệ điều hành Unix /Linux: Bài 1 - Đặng Ngọc Cường
37 p | 255 | 26
-
Bài giảng Hệ điều hành Unix /Linux: Bài 6 - Đặng Ngọc Cường
62 p | 132 | 24
-
Bài giảng Hệ điều hành UNIX-Linux: Giới thiệu môn học - Nguyễn Trí Thành
7 p | 151 | 13
-
Bài giảng Hệ điều hành Unix: Chương 1 - Ngô Duy Hòa
60 p | 123 | 10
-
Bài giảng Hệ điều hành Unix-Linux: Chương 1 - Đặng Thu Hiền
20 p | 137 | 8
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 1 - Nguyễn Trí Thành
16 p | 142 | 8
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 3 - Nguyễn Trí Thành
83 p | 93 | 8
-
Bài giảng Hệ điều hành Unix-Linux: Giới thiệu môn học - Đặng Thu Hiền
5 p | 75 | 6
-
Bài giảng Hệ điều hành Unix - Chương 1: Các khái niệm và kỹ nawng cơ bản
98 p | 77 | 6
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 8 - Nguyễn Trí Thành
38 p | 80 | 5
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 4 - Nguyễn Trí Thành
16 p | 85 | 5
-
Bài giảng Hệ điều hành Unix: Chương 7 - Ngô Duy Hòa
8 p | 94 | 5
-
Bài giảng Hệ điều hành Unix-Linux: Chương 4 - Đặng Thu Hiền
13 p | 73 | 5
-
Bài giảng Hệ điều hành Unix-Linux: Chương 3 - Đặng Thu Hiền
58 p | 85 | 4
-
Bài giảng Hệ điều hành UNIX-Linux: Chương 5 - Nguyễn Trí Thành
18 p | 85 | 4
-
Bài giảng Hệ điều hành Unix-Linux: Chương 5 - Đặng Thu Hiền
13 p | 74 | 3
-
Bài giảng Hệ điều hành Unix-Linux: Chương 2 - Đặng Thu Hiền
24 p | 76 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn