Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
303,95 KB
Nội dung
LinuxShell Trang 1 C C h h ư ư ơ ơ n n g g I I : : G G i i ớ ớ i i t t h h i i ệ ệ u u 1. LỊCH SỬ RA ĐỜI CỦA LINUX Vào năm 1991 tại Phần Lan, Linus B. Torvalds lúc đó là sinh viên ở trường Đại học tổng hợp Hensinki đã dùng một máy tính cá nhân có trang bị bộ xử lí 386 để nghiên cứu cách làm việc của nó . Do hệ điều hành MS-DOS không khai thác đầy đủ các đặc tính của bộ xử lí 386 , Linus đã sửdụng một hệ điều hành thương mại khác là Minix . Hệ điều hành Minix là hệ điều hành Unix cỡ nhỏ . Do đối mặt với các hạn chế của hệ điều hành này , Linus bắt đầu viết lại một số một số của phần mềm để thêm chức năng và các điểm đặc trưng . Sau đó , ông thông báo kết quả của mình miễn phí bằng Internet dưới tên gọi Linux - chữ viết tắt của Linus và Unix . Phiên bản đầu tiên của Linux là 0.01 được tung ra vào tháng 8/1991 . Các phiên bản đầu tiên có rất nhiều hạn chế . Tuy nhiên , sự kiện các mã nguồn được truyền bá rộng rãi đã giúp phát triển hệ điều hành rất nhanh . Nhiều năm qua , số lượng các công ty khai thác đã không ngừng tăng lên . Ngày nay , Linux được phát triển bởi nhiều người rải rác khắp nơi trên thế giới . World Wide Web đóng một vai trò quan trọng do nó hỗ trợ mở rộng nhanh hệ điều hành . Thực tế chúng ta có thể tưởng tượng rằng một nhà khai thác cài đặt Linux trên máy của mình , anh ta phát hiện lỗi , sữa chữa nó và gởi file nguồn đến Linus . Một vài ngày sau đó (đôi khi chỉ vài phút sau ) phần chính yếu được cải tiến có thể sẽ được truyền trên mạng . Mặc dù năm phiên bản đầu tiên của Linux tương đối không ổn định , nhưng phiên bản đầìu tiên được tuyên bố là ổn định (1.0 ) đã được công bố vào khoảng tháng 3/1994 . Số phiên bản đi kèm với kernel có một ý nghĩa đặc trưng bởi vì nó liên quan đến chu kì phát triển . Thực tế , quá trình phát triển Linux diễn ra theo một chuỗi hai giai đoạn : ♦ Giai đoạn phát triển : ở đây kernel không có độ tin cậy cao và tiến trình là bổ sung chức năng cho nó , tối ưu hóa nó và thử nghiệm các ý tưởng mới . Giai đoạn này đem lại sự gia tăng số lượng các phiên bản đánh số lẻ , chẳng hạn như 1.1, 1.3 , vv Đây là thời điểm mà lượng công việc tối đa được thực hiện trên kernel . ♦ Giai đoạn ổn định : ở giai đoạn này , mục đích là tạo ra một kernel càng ổn định càng tốt . Trong trường hợp này , chỉ cho phép thực hiện các hiệu chỉnh , sửa đổi nhỏ . Số phiên bản của các kernel được gọi là ổn định là các số chẵn , chẳng hạn 1.0 , 1.2 và mới nhất là 2.2. Ngày nay , Linux hoàn toàn là một hệ điều hành Unix . Nó ổn định và liên tục phát triển . Nó không chỉ có khả năng phát triển trên các thiết bị ngoại vi mới nhất trên thị trường ( bộ nhớ flash quang , đĩa quang . ) mà hiệu năng của nó còn có thể so sánh với một số hệ điều hành Unix thương mại và thậm chí còn có một số điểm ưu việt hơn . Sau cùng, mặc dù Linux đã có một khoảng thời gian bị giới hạn trong môi trường các trường đại học , bây giờ nó đang được tiếp nhận ở các hãng công nghiệp . Do công suất và độ linh hoat của hệ điều hành này và tính miễn phí của nó mà hiện nay nó đang thu hút một số lượng các công ty ngày càng gia tăng . LinuxShell Trang 2 2. CÁC CHỨC NĂNG CỦA LINUX Hệ điều hành Linux có rất nhiều chức năng và chúng khai thác khả năng của các hệ Unix hiện đại theo các cách sau : v Đa xử lí , các bộ đa xử lí : có thể thực hiện nhiều chương trình đồng thời bất kể sửdụng một hay nhiều bộ xử lí . v Đa nền . v Cho phép nhiều người sửdụng : giống như tất cả các hệ Unix , Linux cho phép nhiều người sửdụng cùng làm việc trên một máy ở cùng thời điểm . v Hỗ trợ truyền thông giao xử lí ( Pipes , IPC , Sockets ) . v Quản lí các thông điệp điều khiển khác nhau . v Hệ thống quản lí thiết bị đầu cuối tuân thủ theo tiêu chuẩn POSIX . Linux cũng giả các thiết bị đầu cuối cũng như điều khiển quá trình . v Hỗ trợ một dải rộng các thiết bị ngoịa vi , chẳng hạn như các cạc âm thanh , giao diện đồ hoạ , mạng , giao diện hệ máy tính nhỏ v Buffer cache : vùng bộ nhớ được dành để làm vùng đệm cho các đầu vào và đầu ra từ các quá trình khác nhau . v Hệ thống quản lí bộ nhớ trang yêu cầu . Một trang sẽ không được nạp chừng nào nó không thực sự cần thiết ở bộ nhớ . v Các thư viện động và dùng chung : Các thư viện động chỉ được tải khi chún thật sự cần thiết và mã của chúng được dùng chung nếu nhiều ứng dụng đang dùng chúng v Các hệ thống file có thể quản lí tốt và đồng đều các phân hoạch file Linux được sửdụng bởi filesystem làm các phân hoạch có các định dạng khác ( MS-DOS , ISO9660, vv. ). v Thiết bị của TCP/IP và các giao thức mạng khác . Tóm lại , Linux là một hệ Unix đầy đủ và mạnh . Nó có thể được ứng dụng dễ dàng . Ngoài ra sựsửdụng công cộng rộng rãi đang trợ giúp nó phát triển một cách nhanh chóng . 3. GIỚI THIỆU CHUNG VỀ LINUX: Linux là hệ điều hành gần giống Unix , có thêí hoạt động độc lập với phần cứng , đa nhiệm , đa người dùng , bảo mật cao , tổ chức tập tin phân cấp , tốc độ cao , đáng tin cậy , có khả năng làm Server cho mạng Internet . Linux có điểm khá nổi bật đó là Tính ổn định .Thật khó mà làm cho Linux bị ngưng trệ và tê liệt ! Đã có nơi thử nghiệm nhiều hệ thống chạy Linux liên tục hằng năm trời mà không phải khởi động lại . Ngoài ra , Linux có thể chạy trên các máy tính thế hệ cũ vốn không thể chạy Windows 9x , thậm chí cả những máy 486 vứt trong kho . Ta có thể chia Linux thành 2 phần : - Linux Kernel :( Hệ lõi ) Xác lập nhiều chương trình cấp thấp và tương tác trực tiếp với CPU . Hệ lõi cung cấp 2 chức năng cho hệ điều hành : Nó cung cấp một hệ giao tiếp chung cho các phần cứng khác nhau từng cạc âm thanh với các chương trình người dùng . Nó xác lập rào chắn giữa 2 chương trình khác nhau , nếu một chương trình bị hỏng chương trình kia không bị nó làm ảnh hưởng . Đây chính là ưu điểm nhất của Linux so với DOS và Windows . LinuxShell Trang 3 - LinuxShell : (Hệ vỏ ) Dùng để cung cấp cho người dùng một hệ giao tiếp được thi hành dễ dàng , giống như COMMAND.COM của DOS . Đồng thời nó cũng có nhiệm vụ bảo vệ hạt nhân của hệ điều hành khỏi tác động trực tiếp của người sửdụng bởi HĐH Linux được thiết kế để các Shell này độc lập với các thành phần chính của HĐH . Khi bạn sửdụng một chương trình Shell và gõ một lệnh nào đó , Shell sẽ thông dịch và thực hiện lệnh này ngay sau đó . Nó sẽ đưa ra các thông báo , báo lỗi hoặc các thao tác tương ứng . Ngoài ra , người sửdụng có thể lập trình với Shell . Các chương trình này được gọi là Script ( ngôn ngữ kịch bản ) và chúng được thông dịch , thực hiện bởi các Shell . Hiện nay có nhiều loại Shell như : sh (Bourn Shell ), bash (Bourn Again Shell ), tcsh , csh , pdksh (Public Domain Shell ) , zsh , ash và mc . Nhưng phổ biến là : sh (Bourn Shell ), csh (C Shell ) , ksh (Korn Shell ) . Để có thể truy cập vào hệ thống , trước hết bạn phải có quyền truy cập , biết được mật khẩu ( Hệ điều hành Unix luôn có sự phân biệt chữ hoa và chữ thường , chữ hoa chỉ dùng để viết tên riêng và mật khẩu ) . Khi bạn dã truy cập được vào hệ thống , các tiện ích và ứng dụng có sẵn sẽ xuất hiện theo một trong hai cách sau : * Sửdụng hệ thống thực đơn : tạo cho người dùngsự tiện lợi khi sửdụng và đồng thời cung cấp cho người quản trị hệ thống một phạm vi bảo mật to lớn . Người quản trị hệ thống có thể sắp xếp lại hệ thống thực đơn của bạn để bạn có thể truy cập đến những ứng dụng và dịch vụ cần thiết . * Môi trường Shell : Nó đòi hỏi bạn phải thành thạo với các lệnh và cấu trúc của Linux . Nếu bạn không có hệ thống thực đơn , môi trường LinuxShell sẽ được kích hoạt ngay sau khi bạn đăng nhập hệ thống . Để biết được bạn đang ở đâu và xem nội dung thư mục , bạn hãy gõ dòng lệnh : $pwd { print working directory } Để chuyển đổi thư mục làm việc bạn sửdụng lệnh cd cùng với tên thư mục mà bạn muốn chuyển tới . Chẳng hạn bạn muốn chuyển đến thư mục research thì bạn phải gõ : $cd research Để thoát khỏi hệ thống (loging out ) bạn gõ vào dòng lệnh : $exit hoặc $logout hoặc nhấn tổ hợp phím Ctrl - D Sau khi thoát thoát khỏi hệ thống trên màn hình xuất hiện dòng thông báo : Login :_ Để chấm dứt hoạt động của hệ thống ( phải chắc chắn rằng bạn đã thoát khỏi tất cả các ứng dụng và đóng tất cả các tệp đã sửdụng ) bạn gõ vào dòng lệnh : % shut down Sau khi các quá trình trên đã hoàn tất , trên màn hình của bạn sẽ xuất hiện dòng chữ sau : System is down . LinuxShell Trang 4 Chương II : Tìm hiểu & sửdụngLinuxshell I- Các lệnh cơ bản trong LinuxShell : 1. Phép kết gán : Phép kết gán cho phép ánh xạ một phím cụ thể theo một hành động . Ví dụ , khi chúng ta gõ phím ^A tại dấu nhắc hệ vỏ con trỏ sẽ nhảy đến đầu dòng. Để thuận lợi , nhiều hệ vỏ gán sẵn cho người dùng các phím gán sau : ^A Dời con trỏ đến đầu dòng ^C Gửi một SIGINTR ( ngắt ) ra hệ vỏ ^D Hiển thị danh sách các tập tin ^E Dời đến cuối dòng ^K Triệt từ con trỏ đến cuối dòng ^N Dời xuống trong danh sách ^P Dời lên trong danh sách ^U Triệt nguyên cả dòng ^I Hoàn tất tập tin LinuxShell Trang 5 Trong trường hợp có nhiều tập tin bắt đầìu bằng các kí tự giống nhau , hệ vỏ sẽ đưa vào nhiều kí tự rồi phát tiếng kêu beep thông báo cho chúng ta biết có các khả năng khác . Ví dụ : >rmdir direct (^I) >rmdir directory_I_want_to_ Đến đây chúng ta có thể gõ lệnh K hoặc D , ^D để có một danh sách các tập tin trong thư mục hiện hành bắt đầìu bằng các kí tự đó . Đây chính là tính năng rất tiện dụng đối với các tập tin hay thư mục có tên dài . 2. Chức năng của một số kí tự : Kí tự Chức năng * ? [ ] Kí tự đại diện hay theo mẫu . & Chạy ứng dụng ở chế độ nền , trả lại dấu nhắc hệ thống cho các tác vụ khác . ; Dấu phân cách nhiều lệnh trên một dòng lệnh . \ Tắt tác dụng của những kí tự đặc biệt như *, ?, [ , ], &, ; , >, <, | ',,,' Khi tham số là nhóm từ (có khoảng trống ) . " . " Khi tham số có khoảng trống và các kí tự đặc biệt ngoại trừ kí tự $ và ' > Định hướng dữ liệu xuất ra file . < Định hướng dữ liệu nhập từ file . >> Định hướng dữ liệu xuất ra cuối file nếu file đã tồn tại . | Định hướng dữ liệu xuất là dữ liệu nhập cho lệnh tiếp theo . ' .' Dấu huyền dữ liệu xuất của một lệnh làm tham số . $ Sửdụng biến môi trường . 3. Cấu trúc thư mục : Linux tổ chức thư mục và tập tin theo cấu trúc cây giống như DOS và Windows . Về đường dẫn , ta có thêí dùng đường dẫn tương đối hoặc đường dẫn tuyệt đối như DOS . Nhưng thay vì dùng dấu " \ " để phân cách các cấp thư mục như trong DOS thì Linux lại dùng dấu " / " . /etc Cấu hình hệ thống cục bộ theo máy /usr/bin Chứa hầu hết các lệnh người dùng /dev Các tập tin thiết bị /usr/man Chứa các tài liệu trực tuyến /usr/include Chứa các tạp tin chuẩn của C /var/log Chứa các tập tin lưu trữ thông tin làm việc hiện hành của người dùng /home Chứa các thư mục con của các User /usr/local Các chương trình bổ sung không thuộc thành phần của một hệ thống . Thông thường ./usr/local có các thư mục con như sau : /usr/local/bin /usr/local/lib /usr/local/man /usr/local/include /usr/src Vị trí của mã nguồn ( kể cả mã nguồn của HĐH Linux ) /usr/lib Chứa các tập tin thư viện của các chương trình người dùngLinuxShell Trang 6 Trong Linux : " . " cho biết đó là thư mục hiện hành , " " chỉ thư mục cao hơn một cấp (thư mục mẹ ) . Nếu đường dẫn bắt đầu bằng "/ " thì hệ thống xem đó như là một tên đường dẫn đầy đủ (tuyệt đối ) . Đường dẫn bắt đầu bằng " ~ " là một đường dẫn tương đối. Những kí hiệu này có thể được sửdụng cùng với nhau . Ví dụ : " ~/ " có nghĩa là thư mục mẹ của thư mục riêng. " / " để chỉ một thư mục cao hơn thư mục mẹ . /home/user01# more ~/document/baocao tương đương với /home/user01# more home/user01/document/baocao 4.Cú pháp dòng lệnh : Các lệnh trong Linux thường bắt đầu bằng tên lệnh (command) , sau đó làcờ (flag) và đối số (argument ) : Command [ flag ] argument1 argument2 Các cờ ( còn gọi là lựa chọn (option) ) trong DOS thường đứng sau " / ", trong khi Linux lại dùng " - ". Ví dụ: trong DOS bạn gõ " dir /a /o:d " thì trong Linux bạn gõ là "ls - lac " . Hầu hết các trường hợp nhiều đối số một chữ cái có thể kết hợp dùng một dấu " - " . Ví dụ : thay vì dùng lệnh " ls -l -F " ta có thể dùng lệnh tương đương " ls -lF " . Các đối số phải cách nhau bởi dấu cách (space) hoặc Tab . Nếu trong đối số có khoảng cách thì phải đặt nó trong cặp ngoặc kép ( xem thêm mục 5.11 ) 5. Một số lệnh thường dùng: 5.1. Tạo thư mục : Cú pháp : mkdir <dir1> <dir2> . <dirN> Trong đó <dir1> <dir2> . <dirN> là các thư mục cần tạo . Ví dụ : mkdir thuchanh tạo thư mục thuchanh mkdir thuchanh/baitap1 tạo thư mục baitap1 là thư mục con của thư mục thuchanh 5.2. Chuyển thư mục : Cú pháp : cd <directory> Dùng " . " để chuyển đến thư mục hiện hành , " " để chuyển đến thư mục cha . Ví dụ : cd /usr/local/bin 5.3. Xem thư mục hiện hành : Cú pháp : pwd 5.4. Xoá thư mục rỗng : Cú pháp : rmdir <dir1> <dir2> <dirN> 5.5. Xoá tập tin hoặc thư mục : Cú pháp : rm <file1> <file2> <fileN> 5.6. Hiển thị thông tin về tập tin và thư mục : Cú pháp : ls <danh sách file> | <Danh sách thư mục> <tham số> <tham số> : - F : dùng để hiển thị vài thông tin về tập tin . Sau tên file , hiển thị dấu sao (*) nếu là file thi hành , dấu (@) nếu là file liên kết , dấu ( / ) nếu là thư mục con , dấu chấm ( . ) nếu là file ẩn . LinuxShell Trang 7 - l : (long) cho phép liệt kê kích thước tập tin , người tạo ra , các quyền người sửdụng . Để liệt kê nội dung của các thư mục con bạn có thể sửdụng cờ -R Để liệt kê các file ẩn bạn sửdụng cờ -a ví dụ : $ ls -lF total 75 drwxrwxr-x 2 user 12 user 12 1024 Apr 7 09:41 baitap/ drwxrwxr-x 2 user 12 user 12 1024 Apr 7 09:41 doc/ -rwxrwxr-x 1 user 12 user 12 71 Mar 31 10:39 hello* -rw-rw-r-- 1 user 12 user 12 126 Apr 7 09:26 baitho.txt -rw-rw-r-- 1 user 12 user 12 70 Apr 7 08:26 hello.c $ 5.7. Di chuyển tập tin , thư mục : Cú pháp : mv <danh sách tập tin hoặc thư mục > <đích> <đích > : là tập tin hay thư mục Lệnh này có thể dùng để đổi tên tập tin hoặc thư mục (tương tự lệnh Rename của DOS). 5.8. Sao chép tập tin , thư mục : Cú pháp : cp <nguồn > <đích > Lệnh này không tự động sao chép các thư mục con trừ khi bạn sửdụng cờ -R 5.9. Xoá các tập tin hoặc thư mục : Cú pháp : rm <file> |< thư mục> Nếu bạn dùng lệnh này kèm với cờ -i thì trước khi định xóa một file , máy sẽ hỏi lại bạn có thực sự muốn xoá hay không . Chú ý , lệnh rm * sẽ xoá mọi file trong thư mục hiện tại . 5.10. Hiển thị nội dung các tập tin : Mỗi lần chỉ hiển thị đầy màn hình (24 dòng ) , muốn xem trang tiếp theo thì nhấn phím spacebar . Cú pháp : more [-n] <danh sách các tập tin > [-n] : chỉ định số dòng mỗi lần hiển thị là n dòng . Ví dụ : $more baitho.txt //hiển thị nội dung tập tin baitho.txt $more mbox // xem tất cả thư lưu trong hộp thư $more -4 grocery.txt \documentstyle[12pt] {article} \input{psfig} \input{/home/a_s/pehng/Teach/Mat466/std.top} --More--(0%) Dòng thông báo --More-- có nghĩa là bạn nhấn phím spacebar để xem phần tiếp theo, nhấn phím q nếu muốn kết thúc . Nếu bạn muốn bỏ qua n dòng đầu tiên thì bạn sửdụng cờ +n Ví dụ : $more +40 grocery.txt 5.11. Tìm kiếm một chuỗi kí tự : Cú pháp : grep <chuỗi cần tìm> <tên file> Nếu tìm thấy thì trả về các dòng có chứa chuỗi cần tìm . Ví dụ : grep New York // tìm từ " New" trong file " York" grep "New York" // tìm chuỗi "New York" trong đầu vào chuẩn ( standard input) LinuxShell Trang 8 Chuỗi kí tự hay biểu thức cần tìm có thể kết hợp với các kí tự đặc biệt sau : Kí tự Tác dụng . Thay thế cho một kí tự .Ví dụ : b.d sẽ tương xứng với bod and bad * và [ ] Xem mục 6. / Tắt tác dụng của các kí tự đặc biệt .Ví dụ : /* sẽ tìm dấu * , // sẽ tìm dấu / ^ Ví dụ : ^704 sẽ tìm có mã vùng (bắt đầu ) là 704 { } Ví dụ : g\{3,4} sẽ tìm bất cứ dòng nào có chứa ggg hoặc gggg Ví dụ : lệnh grep '408.[0-9]\{3\}.[0-9]\{4\}' sẽ tìm mọi số điện thoại có mã vùng là 408; chẳng hạn như : 408-555-1212, 408.555.1212, 408.234.7890 5.12. Tìm kiếm một tập tin : Cú pháp : - Tìm theo tên : $find đườngdẫn -name têntậptin -print - Tìm theo số i- node (i-num) của tập tin : $find đườngdẫn -inum number -print - Tìm theo tên người sở hữu : $find đườngdẫn -user username -print Để tránh các thông báo lỗi đưa ra màn hình , ta có thể đổi hướng đầu ra chuẩn (standard error ) tới một tập tin rỗng ( / dev/null) : $find / -name têntậptin -print 2>/dev/null Ví dụ : $pwd /home/user01 $find / -name ttyc2d1 -print 2>/dev/nul /dev/ttyc2d1 5.13. Hiển thị hướng dẫn sửdụng lệnh: Cú pháp : man <command> <command> là tên của một lệnh hoặc của một tài nguyên cần gọi giúp đỡ . Ví dụ : man ls //đưa ra giúp đỡ của lệnh ls Bạn có thể dùng cú pháp sau để hiển thị nội dung hướng dẫn sửdụng lệnh : Tên lệnh --help 5.14. Nối các tập tin : Cú pháp : cat <file1> <file2> . <fileN> [ >filename] Ví dụ : $cat baitho.txt vanban.doc //hiển thị nội dung cả 2 tập tin $cat baitho.txt vanban.doc > tonghop.doc //kết nối nội dung cả 2 tập tin vào tập tin tonghop.doc 5.15.Phản hồi lại các tham số đưa vào: Cú pháp : echo <arg1> <arg2> . <argN> Ví dụ : $echo "hello" hello 5.16. Hiển thị tên máy tính đang làm việc : Linux cất thông tin về tên máy trong tập tin /etc/hots Cú pháp: hostname LinuxShell Trang 9 Ví dụ : $hostname Linux.edu 5.17. Nén một tập tin : Tên tập tin đã nén giống như tên ban đầu và kèm theo đuôi .gz Cú pháp : gzip <filename> Vi dụ : gzip vban.txt //tên tập tin đã nén là:vban.txt.gz 5.18. Giải nén một tập tin : Cú pháp: gunzip <filename> 5.19. Gọi hướng dẫn : Cú pháp : man < command name > Lệnh này hiển thị tài liệu Linux hoặc các trang giúp đỡ ( man pages) về lệnh <command name> 5.20. Bí danh của lệnh: (alias) Cú pháp : alias < tên lệnh mới > = < tên lệnh cũ > Lệnh này cho phép bạn đặt một bí danh cho một lệnh đã có , kể cả những lệnh phức tạp . Ví dụ : alias help=man // bây giờ bạn có thể dùng lệnh help cp hoặc man cp để hiển thị trang giúp đỡ về lệnh cp alias timedir="ls -art" Dấu ngoặc kép là cần thiết bởi nếu không có nó thì shell sẽ kết thúc lệnh khi gặp dấu cách (space bar) và khi đó cờ -art sẽ mất tác dụng . Chú ý : việc đặt bí danh từ dòng lệnh chỉ có hiệu quả trong phiên làm việc hiện hành . Để có bí danh được kích hoạt mỗi khi đăng nhập (log on ) , hãy định nghĩa bí danh trong file .profile nếu bạn sửdụng Born shell , trong file .login nếu bạn sửdụng C shell. 5.21. clear : Xoá màn hình . 5.22. date : Hiển thị ngày tháng hiện hành của hệ thống . 5.23. time : Hiển thị thời gian hiện hành của hệ thống . 5.24. useradd : Thêm người dùng vào mạng . 5.25. passwd : Đặt lại password người sửdụng . ( Tiện ích mc trên Linux có giao diện làm việc giống như trình NC (Norton Commander) . Để khởi động mc , từ dấu nhắc lệnh gõ : $mc 6. Các kí tự đại diện dùng trong câu lệnh : 6.1. Dấu sao (*) : Đại diện cho một nhóm kí tự bất kì . Ví dụ : cat sales* > allsales // kết nối mọi file có tên bắt đầu là sales vào trong file có tên là allsales ls *rep* // hiển thị mọi file mà tên của nó có chứa "rep" ls .*rep* // hiển thị mọi file ẩn mà tên của nó có chứa "rep" 6.2. Dấu chấm hỏi (?) : Đại diện cho một kí tự bất kì . Ví dụ : lp ??x // in ra các file mà tên có 3 kí tự , bắt đầu bằng 2 kí tự bất kì, còn kí tự cuối là x 6.3. Dấu ngoặc vuông ([ ]) : Chỉ phạm vi các kí tự được đại diện . Ví dụ : ls job[123] // chỉ hiển thị các file :job1, job2, job3 ls [A-Z]* // chỉ hiển thị các file có tên bắt dầu bằng chữ in hoa . [...]... trị này là -1 $shell Chứa thư mục của Shell Với C Shell thì giá trị của biến này là /bin/csh IV Lập trình với C Shell : Người dùng có thể sửdụng ngôn ngữ lập trình của Shell không chỉ được sửdụng để thực hiện một chuỗi các lệnh Giả sử bạn cần tạo một thư mục mới và sao chép tất cả các tệp ở một thư mục sẵn có vào thư mục mới này Để thực hiện công việc đặt ra bạn cần phải sửdụng cơ chế lặp ,... hệ thống và đăng nhập trở lại Trang 21 LinuxShell Chương IV : Các loại Shell khác nhau I Bourne Shell : Bourne Shell được biết với tên sh là một trong những loại Shell đầu tiên và thông dụng nhất hiện nay Để bắt đầu sử dụngShell bạn hãy gõ lệnh : $sh Khi đó con trỏ lệnh sẽ chuyển sang dạng mới là một dấu đô la ($) Khuôn dạng chung cho các lệnh trong Bourne Shell là : $ command arg1 arg2 argn Trong... việc $history Biến này quản lý kích thước của danh sách lưu trữ quá trình sửdụng (history list) $home Chứa thư mục gốc ứng với từng người dùng (thư mục gốc này thường được tham chiếu bởi kí hiệu ~) $ignoreoff Khi giá trị của biến này được đặt ta phải sửdụng ta phải sửdụng lệnh exit để chấm dứt việc sử dụngShell thay vì sửdụng tổ hợp phím Ctrl+d $mail Tệp lưu giữ hộp thư của người dùng $noclobbe... : grep "American Terms" custemers echo $? I Sửdụng biến trong chương trình Shell : Để sửdụng các biến , bạn phải biết cách đặt một giá trị vào một biến và cách truy cập giá trị cất trong biến đó Có 4 cách đặt một giá trị vào một biến : ü Dùng phép gán trực tiếp ü Sửdụng lệnh read ü Sửdụng các tham số của dòng lệnh ü Thay thế đầu ra của một lệnh 1 Sửdụng phép gán trực tiếp : myemail=edsga@crty.com... như cú pháp sửdụng trong ngôn ngữ C Các biến của Shell và các biến môi trường : Các biến trong C Shell được phân biệt làm hai loại : biến của Shell và biến môi trường Biến môi trường được hiển thị bằng các chữ cái hoa , biến của Shell được hiển thị bằng chữ cái thường Các biến môi trường có thể sử dụng bởi các tiến trình con của C Shell trong khi các biến cục bộ thì không Các biến của C Shell được... có thể kiểm tra một shell script và thấy mọi bước nó thực hiện bằng cách nhập vào dòng lệnh sau : sh -x script-name Trong cú pháp trên , script-name là tên của script mà bạn đang xem xét Lệnh sh -x rất hữu ích khi bạn đang thử dò tìm lỗi của một script II- Phân quyền sử dụng - Bảo vệ tập tin, thư mục : 1 Phân quyền sửdụng : Linux đưa ra 3 loại phân quyền sửdụng đối với người sửdụng : - Đọc (chỉ... Korn Shell cũng định nghĩa các biến cục bộ của riêng nó và một phần của các biến này có tên và chức năng giống như trong Bourne Shell , ngoài ra còn thêm một số biến sau : Tên biến Giá trị PS3 Thông báo cho lệnh SELECT PS4 Thông báo cho lệnh TRACE SECOND Thời gian tính bằng giây để nạp Shell TMOUT Thời gian sử dụngShell PRID ID của tiến trình Shell Trang 23 LinuxShell Các lệnh trong Korn Shell :... các phần của lệnh mà không phải đánh lại phần lớn lệnh Để biên soạn lệnh , bạn nhấn phím để chuyển sang chế độ Trang 11 LinuxShell soạn thảo và sau đó sửdụng bất kì lệnh di chuyển dòng nào của trình soạn thảo vi để sửa đổi lệnh Bạn có thể sửdụng phím , sửdụng các lệnh khác của vi như x để xoá một kí tự , r để thay thế một kí tự 14 Xem lại lệnh và thi hành lại lệnh đã thực hiện... một Shell mới : Cú pháp : export Tên biến Khi bạn tạo các biến Shell hoặc cho giá trị các biến đang tồn tại , chúng tồn tại trong quá trình Shell đang chạy Một biến được đặt trong Shell lúc đăng nhập hệ thống là có giá trị đối với mọi đối số của dòng lệnh Một biến Trang 20 LinuxShell đặt trong một Shell chỉ có giá trị trong Shell đó Giá trị đó không xuất hiện hoặc được đặt lại khi bạn thoát Shell. .. tiến trình Trang 24 LinuxShell TT S TIME COMMAND Thiết bị cuối điều khiển tiến trình Tình trạng của tiến trình Thời gian sửdụng CPU của tiến trình Tên lệnh đã gọi tiến trình này c Các biến : Giống như tất cả các Shell khác , C Shell cũng có những biến riêng của bản thân nó ,với những biến này bạn có thể tiến hành khai hoặc gán giá trị Để khai báo một biến trong C Shell bạn có thể sửdụng một trong ba . . II- Phân quyền sử dụng - Bảo vệ tập tin, thư mục : 1. Phân quyền sử dụng : Linux đưa ra 3 loại phân quyền sử dụng đối với người sử dụng : - Đọc (chỉ. chữ sau : System is down . Linux Shell Trang 4 Chương II : Tìm hiểu & sử dụng Linux shell I- Các lệnh cơ bản trong Linux Shell : 1. Phép kết gán : Phép