Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 28 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
28
Dung lượng
2,54 MB
Nội dung
!"# $%&'()*+, *!)-./012345/6 Chủ đề: LẬP TRÌNH SHELL +!)7!89 +!)7!89 !:%' !:%' ;<=>)?! ;<=>)?! GIỚI THIỆU NHÓM 4@ABC2-DEBB'FE 4@ABC2-DEBB'FE G G /@A8!@) /@A8!@) HI!JAK@DEBB HI!JAK@DEBB L!IM@&*&NBO2 L!IM@&*&NBO2 NỘI DUNG THUYẾT TRÌNH 1. Cách lặp trình shell trong fedora Ta có thể lập trình trực tiếp trên terminal trong fedora Và các lệnh sẽ được ngăn cách với nhau bằng dấu phẩy ( , ) Tuy nhiên cách làm này dễ gây khó khăn cho việc lập trình 1 đoạn code dài hay phức tạp. Ta có thể lập trình trực tiếp trên terminal trong fedora Và các lệnh sẽ được ngăn cách với nhau bằng dấu phẩy ( , ) Tuy nhiên cách làm này dễ gây khó khăn cho việc lập trình 1 đoạn code dài hay phức tạp. Vì vậy, ta có thể lập trình trên các trình soạn thảo khác như: vi, emacs,…. Ở đây, ta sẽ được hướng dẫn phương pháp lập trình shell trên vi. 1A4 1A4 • Khởi động vi với terminal bằng câu lệnh $ vi <tên chương trình> ( thường sẽ đặt tên chương trình phù hợp với nội dung sẽ lập trình cho dễ nhớ ) • Sau khi cửa sổ vi hiện lên thì bấm phím a để thực hiện việc soạn thảo. • Khởi động vi với terminal bằng câu lệnh $ vi <tên chương trình> ( thường sẽ đặt tên chương trình phù hợp với nội dung sẽ lập trình cho dễ nhớ ) • Sau khi cửa sổ vi hiện lên thì bấm phím a để thực hiện việc soạn thảo. 1AG 1AG • Thực hiện việc lập trình trong vi. • Thực hiện việc lập trình trong vi. 1A/ 1A/ • Sau khi kết thúc việc lập trình bấm phím ESC sau đó gõ ZZ ( Shift + zz ) • để thoát vi hoặc double click vào thanh trạng thái gõ lệnh :quit sau đó ENTER. • Sau khi kết thúc việc lập trình bấm phím ESC sau đó gõ ZZ ( Shift + zz ) • để thoát vi hoặc double click vào thanh trạng thái gõ lệnh :quit sau đó ENTER. 1AH 1AH • Dùng terminal gọi chương trình vừa được lập trình bằng cú pháp $bash <tên chương trình>. • Dùng terminal gọi chương trình vừa được lập trình bằng cú pháp $bash <tên chương trình>. Các bước lập trình shell trên vi B1: Khởi động vi với terminal bằng câu lệnh $ vi <tên chương trình> ( thường sẽ đặt tên chương trình phù hợp với nội dung sẽ lập trình cho dễ nhớ ) Sau khi cửa sổ vi hiện lên thì bấm phím a để thực hiện việc soạn thảo. [...]... tích sẽ thấy rõ ý tưởng này Lúc này cặp dấu nháy đơn ‘…’ cần thiết để báo cho shell biết chuỗi ‘Vo An‘ là một đối số $ grep ’Vo An’ phonebook Vo An 9998899 Shell giữ nguyên chuỗi ký tự bên trong cặp dấu nháy đơn và xem như chỉ là một đối số Thí Dụ: $ echo 1 2 3 4 1 2 3 4 (có 4 đối số nên khi shell đưa ra stdout các đối số cách đều bởi 1 khoảng trắng) $ echo ’1 1 2 3 2 3 4 4’ Tuy nhiên chú ý $ echo ’*... khóa fi dùng để kết thúc mệnh đề điều kiện if Chú ý là chỉ có một từ fi dù có rẽ nhánh else hay không có cũng vậy 5.2 Cấu trúc elif • Khi có nhiều điều kiện lồng vào nhau như hình bên trái thì shell cho phép dùng elif thay “else if”, và chỉ cần dùng một chữ fi để kết thúc tất cả các điều kiện như hình bên phải; tuy nhiên cách này sẽ tạo khó khăn khi ta cần debug chương trình 5.3 Vòng lặp for: Lệnh... Nguyen dinh Chieu, > Quan 3, Tp HCM” $ echo $ADDRESS 59C Nguyen dinh Chieu, Quan 3, Tp HCM (shell biên dịch bỏ qua ký tự xuống dòng mới [newline] trong ADDRESS vì nó xem đó là dấu phân cách đối số thông thường) $ echo “$ADDRESS” 59 C Nguyen dinh Chieu, Quan 3, Tp HCM (Khi đưa vào trong cặp dấu nháy kép “…” shell biên dịch giữ nguyên ký tự xuống dòng mới [newline] trong ADDRESS) 3.4 Dấu slash ngược... sau • Ví Dụ: $ echo > bash: syntax error near unexpected token ’>‘ (shell hiểu ký tự > ám chỉ sự định hướng dữ liệu nên thấy thiếu đối số chỉ tên tập tin) $ echo ‘>‘ $ echo > > (giống cặp dấu nháy đơn) $ X=* $ echo \$X $X (giống cặp dấu nháy đơn) $ echo “$X“ * $ echo “\$X“ $X (chú ý dấu \ trong “ … “) \> 4 Biểu thức tính toán trong shell • Phép trừ: – Phép nhân: * • Phép cộng: + Phép chia: / Lệnh expr... dấu nháy ngược là yêu cầu shell thi hành lệnh trong cặp dấu nháy ngược và chèn sddout của lệnh này vào vị trí cặp dấu nháy ngược (tương tự cách sử dụng cặp ngoặc tạo độ ưu tiên cao hơn khi tính toán) Ví dụ: $ echo The Date and Time is: `date` The Date and Time is: Wed Mar 22 15: 25: 07 ICT 2000 $ echo The current directory is: `pwd` The current directory is: /tmp/testdir/testshell 3.2 Dấu nháy đơn ‘…’... lệnh test–command được thực hiện và shell xem giá trị trả về của nó; nếu giá trị trả về là 0 thì các lệnh command 1 command k nằm giữa cặp từ khoá do done được thực hiện; kế đó lệnh test–command được thực hiện lại nếu giá trị trả về lại là 0 thì tập lệnh lại được thực hiện và cứ thế cho đến khi nào lệnh test–command trả vì giá trị khác 0 thì vòng lặp được chấm dứt và shell tiếp tục phần sau từ khoá done... ý $ echo ’* means all files in this directory’ * means all files in this directory $ T=’* means all files in this directory’ $ echo $T myfile newfile testfile Zdir means all files in this directory Vì shell gán giá trị biến T xong thì gán tiếp giá trị tên tập tin cho dấu * 3.3 Dấu nháy kép “…” Dấu nháy kép hoạt động tương tự nháy đơn nhưng có vài sự khác biệt Trong dấu nháy kép có 3 ký tự sau đây không . trình bằng cú pháp $bash <tên chương trình& gt;. • Dùng terminal gọi chương trình vừa được lập trình bằng cú pháp $bash <tên chương trình& gt;. Các bước lập trình shell trên vi B1: Khởi động vi. khăn cho việc lập trình 1 đoạn code dài hay phức tạp. Vì vậy, ta có thể lập trình trên các trình soạn thảo khác như: vi, emacs,…. Ở đây, ta sẽ được hướng dẫn phương pháp lập trình shell trên. NHÓM 4@ABC2-DEBB'FE 4@ABC2-DEBB'FE G G /@A8!@) /@A8!@) HI!JAK@DEBB HI!JAK@DEBB L!IM@&*&NBO2 L!IM@&*&NBO2 NỘI DUNG THUYẾT TRÌNH 1. Cách lặp trình shell trong fedora Ta có thể lập trình trực tiếp trên terminal trong fedora Và các lệnh sẽ được