Trở lại   Mạng Máy Tính Việt Nam | Forum Networking Viet Nam | Network | Mang May Tinh > LINUX > BASIC LINUX

Kết Nối Cộng Đồng Mạng

Ðang kí mua áo truyền thống W3
Link Down các Attachment của W3
Ra mắt trang Tin Tức Mạng Máy Tính Việt Nam – W3 Networking News

Hãy tìm kiếm truớc khi đặt câu hỏi


Trả lời
 
LinkBack Ðiều Chỉnh Xếp Bài
  #1 (permalink)  
Củ 15-12-2009, 05:25 PM
manthang's Avatar
Member
 
Tham gia ngày: Jan 2009
Bài gởi: 39
Thanks: 109
Thanked 20 Times in 12 Posts
Mặc định Vài nét về chương trình Shell

Vài nét về chương trình Shell




Shell là 1 chương trình cung cấp giao tiếp người dùng dưới dạng văn bản (text) [user interface – là 1 liên kết giữa người và thiết bị (hoặc hệ thống) mà cho phép người tương tác (trao đổi thông tin) với thiết bị (hệ thống) đó)]. Shell thường được sử dụng trong hệ điều hành Linux và các hệ thống khác giống Unix.

Chức năng chính của Shell là đọc và thông dịch các lệnh được gõ vào trong 1 console [chế độ hiển thị tất cả thông tin nhập xuất dưới dạng text] hoặc cửa sổ terminal trong GUI [có thể ví như cửa sổ cmd trong Windows] , sau đó thực thi lệnh này và có thể đưa kết quả ra 1 đầu ra chuẩn – thường là màn hình.

Thuật ngữ Shell xuất phát từ thực tế là Shell là 1 lớp bên ngoài của hệ điều hành. 1 Shell là 1 giao diện giữa người dùng và thành phần bên trong của hệ điều hành – Kernel [cấu trúc hệ điều hành Linux là Kernel nằm ở trung tâm, sau đó đến Shell, ngoài cùng là các phần mềm ứng dụng]

1 user ở trong 1 Shell [tương tác với Shell] ngay khi user đó đăng nhập vào hệ thống]. Shell là phương thức cơ bản mà 1 user có thể tương tác với hệ thống, và Shell giấu đi các chi tiết phức tạp bên dưới của hệ điều hành mà người dùng không thấy được.

1 Shell Prompt hay còn gọi là dấu nhắc lệnh [command prompt] là 1 ký tự hoặc 1 tập ký tự tại điểm bắt đầu 1 dòng lệnh , ám chỉ rằng Shell đã sẵn sàng nhận lệnh. Nó thường kết thúc với ký tự $ cho người dùng thông thường# cho siêu người dủng [root-admin]. Bên phải Shell Prompt là dòng lệnh [command line] đưa vào cho Shell xử lý.

Kích cỡ Shell khá nhỏ nhưng lại là phần mềm phức tạp và mạnh mẽ được sử dụng cho nhiều mục đích:

- Thực thi chương trình , vd: bạn gõ vào terminal của Ubuntu firefox, Shell sẽ chạy trình duyệt Web cho bạn
- Nhận lệnh, thực thi lệnh, trả về kết quả của lệnh
- Chuyển tiếp - redirection [dữ liệu đầu ra của lệnh này sẽ là thông tin đầu vào cho lệnh kia] vd:

Code:
find . -name "rc.conf" -exec chmod o+r '{}' \;
Lệnh này sẽ tìm trong thư mục hiện hành và các thư mục con của nó tất cả các file có tên rc.conf, sau đó các file này được gán quyền đọc cho nhóm Others

- Điều khiền môi trường người dùng [đổi Shell, Shell Prompt]
- Phục vụ cho các ngôn ngữ lập trình [dùng để viết Shell Scipt]

Trên các hệ thống sử dụng GUI, nhiều người dùng hiếm khi tương tác trực tiếp với Shell. Tuy nhiên, các GUI đơn thuần chỉ là front-ends cho Shell [GUI – Front Ends phần giao diện phía ngoài tương tác trực tiếp với người dùng , chịu trách nhiệm lấy dữ liệu người dùng đưa vào và xữ lý sao cho Shell – Back Ends sử dụng được]. Shell thì thường mạnh và giàu tính năng, mềm dẻo hơn GUI, hầu hết người dùng chuyên nghiệp Unix/Linux thích thực hiện các tác vụ hệ thống dùng Shell hơn GUI.

Có khá nhiều Shell được phát triển cho HDH *nix. Chúng có vài đặc tính giống nhau, 1 số điểm khác biệt vể câu lệnh, cú pháp, tùy chọn, chức năng. Mọi HDH *nix có ít nhất 1 Shell được tích hợp sẵn. 1 số Shell phổ biến là:

sh (the Bourne Shell) là Shell cho Unix đầu tiên và vẫn còn được sử dụng rộng rãi cho tới ngày nay. Sh được viết bởi Stephen Bourne tại Bell Labs vào năm 1974, sh thì đơn giản, kích cỡ nhỏ, ít tính năng nhất so với các Shell ra đời sau này.
Sh thiếu hẳn các tính năng hay như:
+ tự động hoàn thành tên file, câu lệnh [bạn chỉ cần gõ vào ký tự đầu của file , lệnh và nhấn phím Tab thì Shell đưa ra 1 số tên file, lệnh bắt đầu bằng ký tự đó],
+ lưu lại các câu lệnh đã gõ vào bộ nhớ và cho phép duyệt, chỉnh sửa hoặc sử dụng lại các câu lệnh này

bash (Bourne-again shell) là Shell mặc định trên Linux, *nix. Bash cải tiến từ sh, nhiều câu lệnh hơn [các lệnh làm việc trên sh cũng làm việc trên bash, ngược lại thì không phải lúc nào cũng đúng]. Bash rất trực quan và mềm dẻo, thích hợp cho cả beginer và advanced user. Bash được viết bởi Brian Fox and Chet Ramey cho dự án GNU [mục đích của GNU là phát triển 1 HDH hoàn toàn miễn phí, toàn diện, hiệu năng cao, tương thích với Unix] .

ash (the Almquist shell) là 1 bản sao của sh, viết bởi Kenneth Almquist năm 1989. Ash không có nhiều tính năng bổ sung như các Shell khác, thích hợp cho các hệ thống có bộ nhớ nhỏ, đặc biệt là các hệ thống nhúng.

csh (the C shell) có cú pháp khá giống với ngôn ngữ C, nên thích hợp cho các lập trình viên. Csh được tạo bởi Bill Joy [tác giả của vi text editor và sau này là đồng sáng lập Sun Microsystems.

...Và nhiều Shell khác như: tcsh, zsh



thay đổi nội dung bởi: manthang, 15-12-2009 lúc 05:28 PM
Trả Lời Với Trích Dẫn
Trả lời

Bookmarks


Ðang đọc: 1 (0 thành viên và 1 khách)
 
Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt
Trackbacks are Mở
Pingbacks are Mở
Refbacks are Mở


Similar Threads
Ðề tài Người Gởi Chuyên mục Trả lời Bài mới gởi
Linux Home Networking - from basic to advance for all [Peter Harrison] cutynhangheo ADVANCE LINUX 25 24-10-2009 09:09 AM
Thủ Thuật Trên Windows xp votinh_manu PHẦN CỨNG 1 14-05-2009 06:19 PM
Liên kết động trong Linux và Windows loveslope ADVANCE LINUX 0 25-07-2008 02:23 AM
Danh mục định dạng File Tu@n CÁC HỆ ĐIỀU HÀNH CỦA MICROSOFT 0 15-07-2008 07:40 PM
Vì sao một chương trình quét virus là không đủ loveslope ANTI-VIRUS 1 14-06-2008 02:36 PM


Múi giờ GMT. Hiện tại là 12:54 PM.

Powered by: vBulletin & TheGioiMang.Org
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0 Developed by Group W3 and member TheGioiMang
Vui lòng ghi nguồn TheGioiMang.oRg khi bạn dùng các bài viết của 4rum