Tạo và chạy chương trình Shell

Một phần của tài liệu Quản trị hệ điều hành linux (Trang 73 - 75)

6. Lập trình shell.

6.1. Tạo và chạy chương trình Shell

Nó một cách đơn giản nhất, lập trình shell chỉ là các file chứa một hoặc nhiều câu lệnh shell hay câu lệnh Linux. Bạn có thể sử dụng các chương trình đơn giản thực hiện các công việc lặp đi lặp lại, để thay cho hai hay nhiều câu lệnh luôn luôn được thực thi cùng nhau bằng một câu lệnh, để tự động cài đặt các chương trình khác, và để viết các ứng dụng tương tác đơn giản.

Để tạo một chương trình shell, bạn phải tạo một file sử dụng một trình soạn thảo và đưa các câu lệnh shell hay Linux mà bạn muốn được thực thi vào trong file. Giả sử rằng bạn có một ổ CD-ROM đã được gắn vào hệ thống Linux. Thiết bị CD-ROM này được gắn vào hệ thống khi hệ thống được khởi động lần đầu. Nếu bạn cần thay đổi đĩa CD đã có trong ổ CD bằng một đĩa CD mới. Một cách để bạn thực hiện được công việc này là bạn “nhả” ổ CD-ROM khỏi hệ thống sử dụng câu lệnh umount, và sau đó gắn lại ổ sử dụng câu lệnh mount . Các câu lệnh chỉ ra ở dưới đầy cho bạn thấy tuần tự các bước thực hiện:

umount /dev/cdrom

mount /dev/cdrom /cdrom

Thay việc gõ cả hai câu lệnh mỗi lần bạn thay đổi đĩa CD, bạn có thể tạo một chương trình shell thực hiện cả hai câu lệnh này cho bạn. Để tạo chương trinh shell này bạn đưa cả hai câu lệnh vào trong một file có tên là remount (hoặc một tên bất kỳ nào khác mà bạn muốn).

Có một vài cách để thực hiện các câu lệnh trong file remount. Cách thứ nhất là bạn thay đổi thuộc tính cho file này có thể thực thi bằng cách thực hiện câu lệnh sau: chmod +x remount

Câu lệnh này thay đổi quyền của file làm cho file có thể thực thi. Để chạy chương trình shell mới, gõ remount trên dòng lệnh.

kiếm ca bn, nếu không h thng s không tìm thy chương trình để thc thi. Nếu bn không chay được chương trình bi vì file đó không được tìm thy, hãy xác định

đường dn. Hoc nếu bn s dng tcsh để viết chương trình, dòng đầu tiên ca chương trình shell phi bt đầu vi # để tcsh nhn ra nó như mt file chương trình tcsh. Thc ra, cách an toàn (đảm bo ) nht là dòng đầu ca mi chương trình shell bn thêm #!/bin/sh để đảm bo chương trình shell được thc thi như mt tiến trình Bourne shell. Điu này ngăn chn nhiu vn đề vi ngôn ng lp trình C, shell s c gng thông dch cú pháp Bourne shell.

Một cách khác là bạn có thể thực thi chương trình shell là chạy shell mà chương trình được viết theo nó và tên chương trình như một khai báo cho shell. Trong trường hợp một chương trinh tcsh, bạn thực hiện câu lệnh sau:

tcsh remount

Câu lệnh này chạy một shell mới và nói cho nó thực thi các câu lệnh trong file remount.

Cách thứ ba để thực thi các câu lệnh trong một file chương trình shell là sử dụng câu lệnh . (dấu chấm) với cả shell pdksh và bash hoặc câu lệnh source trong shell tcsh. Các câu lệnh này nói cho shell thực thi file được truyền vào như đối số. Ví dụ, bạn có thể sử dụng câu lệnh sau để nói cho bash hoặc pdksh thực thi các câu lệnh trong file remount:

. remount

Để làm tương tự đối với tcsh, sử dụng câu lệnh sau: source remount

Ví dụ sau trình bầy một tình huống khác, trong đó việc sử dụng chương trình shell sẽ giúp tiết kiệm rất nhiều thời gian. Giả sử rằng bạn đã phải làm việc với ba file khác nhua trong một thư mục mỗi ngày, và bạn muốn dự phòng ba file này vào một đĩa mềm vào cuối mỗi ngày. Để thực hiện được công việc này, bạn phải gõ một loạt các lệnh:

mount -t msdos /dev/fd0 /a

cp file1 /dev/fd0

cp file2 /dev/fd0

cp file3 /dev/fd0

Một cách dự phòng các file là gắn ổ đĩa mềm vào hệ thống và sau đó gõ ba câu lệnh copy, mỗi lệnh cho một file bạn muốn copy. Một cách đơn giản hơn là đưa bốn câu lệnh này vào trong một file có tên là backup và sau đó thực hiện câu lệnh backup khi bạn muốn copy ba file này vào đĩa mềm.

Bn vn phi đảm bo chương trình file shell backup có th thc thi và nm trong mt thư mc mà có trong đường dn ca bn trước khi chy câu lnh. Bn hãy cn thn khi s dng mt tên file, nó có th tương ng vi tên ca mt câu lênh h thng. Ví d, nếu có mt chương trình được gi là backup trong đường dn mà shell tìm kiếm trước khi đọc thư mc hin ti, câu lnh đó có thể được thi thay cho file câu lnh shell. Vì lý do này, hãy c s dng các tên file cho kch bn shell ca bn không gn vi các câu lnh Linux.

Một phần của tài liệu Quản trị hệ điều hành linux (Trang 73 - 75)

Tải bản đầy đủ (PDF)

(113 trang)