1. Trang chủ
  2. » Luận Văn - Báo Cáo

Hệ điều hành linux và lập trình shell

69 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN MẠNG – TRUYỀN THÔNG  LÊ THỊ HUYỀN TRANG HỆ ĐIỀU HÀNH LINUX VÀ LẬP TRÌNH SHELL Giáo viên hướng dẫn : Th.S Lê Văn Minh Sinh viên thực : Lê Thị Huyền Trang Lớp : 45A1 Vinh, 2008 Lời mở đầu  Trong bối cảnh kinh tế giới xu hướng tồn cầu hóa, Việt Nam gia nhập WTO yêu cầu quyền trở nên vấn đề cấp bách Ở Việt Nam, vấn đề vi phạm quyền phần mềm phổ biến, nước ta dẫn đầu giới số lượng phần mềm dùng khơng có quyền Và phần mềm mã nguồn mở xem giải pháp hữu hiệu cho toán quyền nước ta Phần mềm mã nguồn mở mặt có chi phí rẻ so với phần mềm truyền thống, mặt khác dễ nâng cấp, cải tiến cung cấp mã nguồn kèm theo Và thời đại Windows thống lĩnh thị trường máy tính với mức giá cao hướng người dùng tới hệ điều hành mã nguồn mở miễn phí, hệ điều hành Linux Linux có đặc tính tuyệt vời hệ điều hành Unix, đặc biệt tính ổn định hệ thống, tính đa nhiệm đa người dùng Đồng thời, Linux lại dễ tiếp cận với đa số người hệ điều hành mã nguồn mở, lại chạy máy PC với cấu hình thấp thấp, có giao diện đồ họa thân thiện mạnh Windows, có phần mềm phục vụ cơng tác văn phịng Open Office, có sở liệu chuyên nghiệp MySQL, có đủ tiện ích mail, chat, truy cập Web… để kết nối mạng Internet Ngồi ra, Linux cịn hệ điều hành mạng với tính bảo mật cao mơi trường lý tưởng người u thích lập trình Tuy nhiên người dùng quen sử dụng windows nên với hệ điều hành khiến cho nhiều người cảm thấy bỡ ngỡ khó tiếp cận Đồng thời với nguyên tắc thiết kế dựa vào giao diện “Command line” làm cho nhiều người “không dám dùng Linux” Chính vậy, mục tiêu đề tài tơi giới thiệu cách khái quát, hệ điều hành Linux, cụ thể qua phiên nhiều người ưa thích Ubuntu giới thiệu lập trình shell Linux để người ưa thích lập trình có nhìn Qua bạn sinh viện, người ưa thích lập trình, người chưa biết Linux mạnh dạn khám phá phiên Linux distribution Ubuntu lập trình ứng dụng Bố cục khóa luận: Khóa luận gồm chương với nội dung sau: Chương 1: Tổng quan hệ điều hành Linux Chương 2: Ubuntu Chương 3: Lập trình Shell Ngồi cịn có phần tài liệu tham khảo Chương Tổng quan Hệ điều hành Linux 1.1 Hệ điều hành Unix 1.1.1 Lịch sử hệ điều hành Unix Giữa năm 1965, phịng thí nghiệm Bell hãng AT&T số trung tâm khác thực dự án xây dựng hệ điều hành có tên gọi Multics (Multiplexed Information and Computing Service) với mục tiêu: Tạo lập hệ điều hành phủ vùng lãnh thổ rộng (hoạt động tập máy tính kết nối), đa người dùng, có lực cao tính tốn lưu trữ Dự án nói thành công mức độ khiêm tốn người ta biết đến số khiếm khuyết khó khắc phục Multics Năm1969, Ken Thompson, chuyên viên phịng thí nghiệm Bell, người tham gia dự án Multics, Dennics Richie viết lại hệ điều hành đa-bài toán máy PDP-7 với tên UNICS (UNiplexed Information and Computing Service) Đến năm 1971 hệ điều hành viết assembler cho máy PDP-11/20 mang tên UNIX (Version 1) Năm 1973, sử dụng ngôn ngữ C Riche, Thompson viết lại nhân hệ điều hành UNIX , hệ điều hành trở nên dễ dàng cài đặt tới loại máy tính khác nhau; tính chất gọi tính khả chuyển (portable) UNIX Vào năm 1979, phiên thứ Unix phát hành, hệ điều hành gốc cho tất hệ thống Unix có Sau thời điểm đó, lịch sử Unix bắt đầu trở nên phức tạp Cộng đồng trường đại học học viện, đứng đầu Berkeley, phát triển nhánh khác gọi Berkeley Software Distribution (BSD), AT&T tiếp tục phát triển Unix tên gọi “System III” sau “System V” Vào năm cuối thập kỷ 1980 năm đầu thập kỷ 1990, “cuộc chiến tranh” hai hệ thống diễn căng thẳng Sau nhiều năm, hệ thống theo đặc điểm khác Trong thị trường thương mại, “System V” giành thắng lợi (có hầu hết giao chuẩn thông dụng) nhiều nhà cung cấp phần cứng chuyển sang “System V” AT&T Tuy nhiên, “System V” cuối kết hợp cải tiến BSD, kết hệ thống trở thành pha trộn nhánh Unix Nhánh BSD không chết, thay vào đó, sử dụng rộng rãi mục đích nghiên cứu, cho phần cứng PC, cho server đơn mục đích (vd: nhiều website sử dụng nguồn BSD) Bảng sau liệt kê số cài đặt UNIX phổ biến (thường thấy có chữ X cuối tên gọi Hệ điều hành): Tên hệ AIX A/UX Dynix HP-UX Irix Linux NextStep OSF/1 SCO UNIX Solaris SunOS Ultrixs Unicos Ultrix UnixWare XENIX Nhà cung cấp International Business Machines Apple Computer Sequent Hewlett-Packard Silicon Graphics Free SoftWare Foundation Next Digital Equipment Corporation Santa Cruz Operation Sun Microsystems Sun Microsystems Digital Equipment Corporation Cray Novell MicroSoft Nền phát triển AT&T System V AT&T System V BSD(Berkeley SoftWare BSD Distribution) AT&T System V BSD BSD AT&T System V AT&T System V BSD UNIX BSD UNIX AT&T System V AT&T System V AT&T System III-MS 1.1.2 Đặc trưng hệ điều hành UNIX  Hệ điều hành viết ngôn ngữ bậc cao; vậy, dễ đọc, dễ hiểu, dễ thay đổi để cài đặt loại máy (tính khả chuyển)  Có giao diện người dùng đơn giản đủ lực cung cấp dịch vụ mà người dùng mong muốn (so sánh với hệ điều hành có từ trước giao diện UNIX tiến vượt bậc)  Thỏa mãn nguyên tắc xây dựng chương trình phức tạp từ chương trình đơn giản hơn: trước hết có module nhân sau phát triển để có tồn hệ điều hành  Sử dụng hệ thống File có cấu trúc cho phép dễ dàng bảo quản sử dụng hiệu  Sử dụng phổ biến dạng đơn giản trình bày nội File dòng byte cho phép dễ dàng viết chương trình ứng dụng truy nhập, thao tác với liệu File  Có kết nối đơn giản với thiết bị ngoại vi: Các file thiết bị đặt sẵn hệ thống File tạo kết nối đơn giản chương trình người dùng với thiết bị ngoại vi  Là hệ điều hành đa người dùng, đa q trình, người dùng thực q trình cách độc lập  Mọi thao tác vào - hệ điều hành thực hệ thống File: thiết bị vào tương ứng với file Chương trình người dùng làm việc với file mà khơng cần quan tâm cụ thể tên file đặt cho thiết bị hệ thống  Che khuất cấu trúc máy người dùng, đảm bảo tính độc lập tương đối chương trình liệu phần cứng, tạo điều kiện thuận lợi cho người lập trình viết chương trình chạy UNIX với điều kiện phần cứng hoàn toàn khác biệt 1.2 Tổ chức phần mềm miễn phí (Free Sofrware Foundation-FSF) Vào năm 1984, nhà bác học người Mỹ Richard Stallman sáng lập tổ chức phần mềm miễn phí (FSF) có trang chủ nằm địa http://www.fsf.org Mục đích tổ chức loại trừ tất điều cấm đoán hạn chế phân phối, chép, sửa đổi, nghiên cứu chương trình ứng dụng Bởi tính đến thời điểm bắt đầu xây dựng tổ chức cơng ty thương mại giữ cẩn thận chương trình ứng dụng mình, bảo vệ sáng chế, dấu hiệu bảo vệ quyền tác giả, giữ bí mật nghiêm ngặt mã nguồn chương trình viết ngôn ngữ bậc cao (như C++) Stallman cho việc có hại phát triển chương trình ứng dụng, dẫn đến việc giảm chất lượng chương trình có mặt nhiều lỗi khơng xác định chương trình Tồi tệ làm chậm trình trao đổi ý tưởng ngành lập trình, làm chậm trình tạo ứng dụng nhà lập trình phải viết lại từ đầu ứng dụng thay dùng đoạn mã nguồn chương trình khác Trong khn khổ FSF bắt đầu với dự án GNU, dự án tạo chương trình ứng dụng miễn phí GNU từ viết tắt GNU‟s not UNIX , tức thuộc dự án GNU thuộc UNIX Những dự án GNU phát triển đề tự do, khơng có nghĩa chúng phân phối khơng có quyền khơng luật pháp bảo vệ Những chương trình OpenSource (mã nguồn mở) phân phối theo quyền Giấy phép công cộng GNU (General PublicLicense-GPL) Bản quyền đọc địa http://www.gnu.org/copyleft/gpl.html, dịch tiếng việt khơng thức http://vi.openoffice.org/gplv.html Nói cách ngắn gọn chất GPL là: Chương trình ứng dụng phân phối theo GPL quyền phát triển, sửa đổi, chuyển bán cho người khác với điều kiện kết thu phải phân phối theo GPL Dự án GNU thành công việc xây dựng lượng khổng lồ thành phần hữu ích, bao gồm trình biên dịch C (gcc) tốt nay, trình hiệu chỉnh văn ấn tượng (emacs) loạt công cụ Tuy nhiên, vào năm 1990, FSF gặp khó khăn việc phát triển kernel hệ điều hành [FSF 1998] mà khơng có kernel giấc mơ hồn thành hệ điều hành miễn phí họ khơng thể hồn tất 1.3 Sơ Linux 1.3.1 Lịch sử Linux Linus Tovalds (sinh viên đại học tổng hợp Helsinki Phần lan) đưa nhân (phiên đầu tiên) cho hệ điều hành Linux vào tháng năm 1991 sở cải tiến phiên UNIX có tên Minix Giáo sư Andrew S Tanenbaum xây dựng phổ biến Nhưng Nhân Linux chưa phải hệ điều hành, nên Nhân Linux cần phải liên kết với chương trình ứng dụng viết tổ chức GNU tạo nên hệ điều hành hoàn chỉnh: Hệ điều hành GNU/LINUX người quen gọi theo tên gọi nhân hệ điều hành LINUX Dưới số mốc thời gian quan trọng trình hình thành phát triển hệ điều hành Linux:  Sau ba năm nhân Linux đời, đến ngày 14-3-1994, hệ điều hành Linux phiê0n 1.0 phổ biến Thành công lớn Linux 1.0 hỗ trợ giao thức mạng TCP/IP chuẩn UNIX, sánh với giao thức socket BSD- tương thích cho lập trình mạng Trình điều khiển thiết bị bổ sung để chạy IP mạng Ethernet tuyến đơn qua modem Hệ thống file Linux 1.0 vượt xa hệ thống file Minix thơng thường, ngồi hỗ trợ điều khiển SCSI truy nhập đĩa tốc độ cao Điều khiển nhớ ảo mở rộng để hỗ trợ điều khiển trang cho file swap ánh xạ nhớ file đặc quyền (chỉ có ánh xạ nhớ đọc thi hành Linux 1.0)  Vào tháng 3-1995, nhân 1.2 phổ biến Điều đáng kể Linux 1.2 so với Linux 1.0 chỗ hỗ trợ phạm vi rộng phong phú phần cứng, bao gồm kiến trúc tuyến phần cứng PCI Nhân Linux 1.2 nhân kết thúc dòng nhân Linux hỗ trợ PC Một điều cần lưu ý đánh số dòng nhân (hệ điều hành) Linux Hệ thống số chia thành số mức, chẳng hạn hai mức 2.4 ba mức 2.2.5 Trong cách đánh số vậy, quy ước với số từ mức th1ứ hai trở đi, số chẵn dịng nhân ổn định tương đối hồn thiện, cịn số lẻ dịng nhân phát triển tiếp  Tháng 6-1996, nhân Linux 2.0 phổ biến Có hai đặc trưng bật Linux 2.0 hỗ trợ kiến trúc phức hợp, bao gồm cổng Alpha 64-bit đầy đủ, hỗ trợ kiến trúc đa xử lý Phân phối nhân Linux 2.0 thi hành xử lý Motorola 68000 kiến trúc SPARC SUN Các thi hành Linux dựa vi nhân GNU Mach chạy PC PowerMac  Tới năm 2000, nhân Linux 2.4 phổ biến Một đặc điểm quan tâm nhân hỗ trợ mã ký tự Unicode 32 bít, thuận lợi cho việc xây dựng giải pháp toàn diện triệt để vấn đề ngôn ngữ tự nhiên phạm vi toàn giới 1.3.2 Một số phiên Linux Redhat FedoraCore: Bản Linux có lẽ thịnh hành giới, phát hành công ty Redhat Từ năm 2003, Redhat Inc chuyển hướng kinh doanh Họ đầu tư phát triển dòng sản phẩm Redhat Interprise Linux (RHEL) với mục đích thương mại, nhắm vào cơng ty, xí nghiệp Đối với người dùng bình thường, họ open project tên Fedora Redhat bỏ tiền số kỹ sư hỗ trợ cho dự án đồng thời kêu gọi developers khắp giới qui tụ lại để phát triển FedoraCore Bản Linux Redhat cuối dừng phiên 9.0 Version FedoraCore đếm từ WhiteBox Linux: Bản clone Redhat EnterpriseLinux 3.0 Build sourcecode RHEL nhóm kỹ sư LA, HoaKỳ Hiện server Nhatban.NET dùng SuSE Linux: Made in Germany Bản Linux thịnh hành châu Âu Bắc Mỹ Năm 2003, công ty SuSE bị ông lớn Novell mua Novell dốc sức đầu tư cho SuSE để nhắm vào enterprise users hòng giành lại thị phần từ tay Redhat Phiên SuSE 10.3 Mandrake Linux: Made in France Cũng Linux thịnh hành châuÂu, Mỹ, Việt Nam Phiên MDK 10.1 Turbo Linux: Nổi tiếng Nhật, Trung Quốc Công ty Turbo đầu tư mạnh nhằm thống trị thị trường Linux Trung Quốc Phiên Turbo 10F Debian Linux: Một ông lớn làng Linux Nhiều người có ý kiến cho rằng: Người khơng chun nên dùng FedoraCore để làm quen với kỹ thuật Linux, cịn dân chun nghiệp nên dùng Debian ổn định tuyệt vời Phiên 3.1 Vine Linux: Cực kỳ ưa chuộng Nhật Được phát triển Redhat6.2 Đặc điểm nhẹ (duy đĩa CD) hỗ trợ tiếng Nhật 100% Vine Linux tích hợp thêm số tính Debian ví dụ như: apt-get Phiên 4.2 Knoppix Linux: Made in Germany Bản liveLinux ưa chuộng Khởi động trực tiếp từ CD mà không cần cài đặt vào ổ cứng Phiên 5.1.1 Vietkey Linux: Made in Vietnam Hoàn tồn khơng có tiếng tăm ngồi chuyện giải thi TTVN 2003 Phát triển nhóm Vietkey Redhat 7.2 VnlinuxCD: Bản liveCD by LarryNguyễn Nguyên tắc vnlinuxCD giống Knoppix build Mandrake 9.2 Hỗ trợ tốt vấn đề tiếng Việt Ubuntu: Là phân phối Linux chủ yếu dành cho máy tính để bàn dựa Debian GNU/Linux Nó phát hành tháng lần chạy trực tiếp đĩa LiveCD Các phiên khác nhiều distributor khác: Check, Slackware, Gentoo, College, YellowDog, SGI, Momonga, 1.3.3 Đặc điểm Linux Do mã nguồn Linux phân phối tự miễn phí, nên từ đầu có nhiều nhà lập trình tham gia vào trình phát triển hệ thống Nhờ đến thời điểm Linux hệ điều hành đại, bền vững phát triển nhanh nhất, hỗ trợ công nghệ gần Phần lớn nguyên tắc thiết kế Unix áp dụng cho Linux Linux thừa kế đặc tính thiết kế chủ yếu để dùng giao diện « dịng lệnh » ( command line) Thực tế giao diện đồ hoạ, tức môi trường làm việc đồ hoạ bao gồm cửa sổ, biểu tượng thực đơn, xây dựng giao diện làm việc theo dòng lệnh Cái có ý nghĩa hệ thống tập tin Linux cấu tạo để quản lý cách dễ dàng qua dịng lệnh Dưới trình bày số đặc điểm của hệ điều hành Linux tại: Nhiều tiến trình thực Tất tiến trình độc lập, khơng tiến trình cản trở cơng việc tiến trình khác Để làm điều nhân thực chế độ phân chia thời gian xử lý trung tâm, chia cho tiến trình khoảng thời gian thực Cách hoàn toàn khác với chế độ “nhiều tiến trình đẩy nhanh” thực Windows 95, tiến trình phải nhường xử lý cho tiến trình khác (và làm chậm trễ lâu việc thực hiện) Truy cập nhiều người dùng Linux hỗ trợ khả nhiều người dùng làm việc lúc Khi Linux cung cấp tất tài nguyên hệ thống cho người dùng làm việc thông qua Terminal xa khác Swap nhớ lên đĩa Swap nhớ cho phép làm việc với Linux dung lượng nhớ có hạn Nội dung số phân (trang) nhớ ghi lên vùng đĩa cứng xác định từ trước Vùng đĩa cứng coi nhớ phụ thêm vào Việc có làm giảm tốc độ 10 ${myfile%/*} dirname = /usr/src/linux/Documentation $myfile = /usr/src/linux/Documentation Để minh hoạ toán tử pattern-matching thay thế, lệnh thay dấu hai chấm biến môi trường $PATH dòng mới, kết hiển thị đường dẫn dễ đọc (ví dụ sai ta khơng có bash phiên 2.0 hơn): $ echo –e ${PATH//:/\\n} /usr/local/bin /bin /usr/bin /usr/X11R6/bin /home/kwall/bin /home/wall/wp/wpbin 3.2.1.3 Các toán tử so sánh chuỗi Kiểm tra Điều kiện thực str1 = str2 str1 str2 -n str str có độ dài lớn (khác null) -z str str có độ dài (null) 3.2.1.4 Các toán tử so sánh số học Kiểm tra Điều kiện thực -eq Bằng -ge Lớn -gt Lớn -le Nhỏ -lt Nhỏ 55 -ne Khác 3.2.2 Điều khiển luồng Các cấu trúc điều khiển luồng bash bao gồm: - if– Thi hành nhiều câu lệnh có điều kiện true false - for – Thi hành nhiều câu lệnh số cố định lần - while – Thi hành nhiều câu lệnh điều kiện true false - until – Thi hành nhiều câu lệnh điều kiện trở thành true false - case – Thi hành nhiều câu lệnh phụ thuộc vào giá trị biến - select – Thi hành nhiều câu lệnh dựa khoảng tuỳ chọn người dùng 3.2.2.1 Cấu trúc rẽ nhánh có điều kiện if then else fi - Cú pháp: if command1 then command2 else command3 fi Trong đó: Nếu giá trị trả sau thực command1 (đúng) thực command2, khơng thực command3 kết thúc - Có thể dùng tốn tử && || gọi tốn tử logic And OR Ví dụ: $ rm tailieu && echo "File chuyển thành công" || echo "File chưa chuyển" Nếu file tailieu xóa thành cơng (giá trị trả lệnh 0) lệnh "echo File chuyển thành công" thực hiện, khơng lệnh "echo File chưa chuyển" chạy 56 Ví dụ: if cd /home/huyentrang/data && cp datafile datafile.bak then # more code here fi 3.2.2.2 Các vòng lặp định: for - Cú pháp: for var in Các câu lệnh có sử dụng $var done Hoặc For (( expr1; expr2; expr3 )) Lặp lại toán tử nằm done expr3=true done Trong đó: danh sách giá trị, ví dụ tên file - Linux khơng có tiện ích để đổi tên hay copy nhóm file Trong MS-DOS ta có 17 file có phần mở rộng a*.doc, ta sử dụng lệnh COPY để copy *.doc thành file *.txt Lệnh DOS sau: C:\ cp doc\*.doc doc\*.txt Sử dụng vòng lặp for bash để bù đắp thiếu sót Đoạn mã chuyển thành chương trình shell thực ta muốn: for docfile in doc/*.doc cp $docfile ${docfile%.doc}.txt done Sử dụng toán tử pattern-matching bash, đoạn mã làm việc copy file có phần mở rộng *.doc cách thay doc cuối tên file txt 57 - Ví dụ: #!/bin/bash for i in echo "Welcome $i times" done Ta có cấu trúc for sau, chương trình có chức chương trình ta ý đến khác biệt cú pháp lệnh for #!/bin/bash for (( i = times"done i ” “ out Nó tạo file tên out thư mục chứa nội dung file bash_profile, cách định hướng đầu cat tới file - Tương tự, ta cung cấp đầu vào lênh từ file lệnh sử dụng toán tử đầu vào “” ghi đè lên file tồn Đôi điều không mong muốn, bash cung cấp tốn tử nối thêm liệu 61 “>>” cho phép nối thêm liệu vào cuối file Hay xem lệnh thêm bí danh cdlpu vào cuối file bashrc tôi: $echo “alias cdlpu=’cd $HOME/kwall/projects/lpu’ ” >> $HOME/.bashrc - Một cách sử dụng định hướng đầu vào đầu vào chuẩn (bàn phím) Cú pháp lệnh sau: Command

Ngày đăng: 02/12/2021, 23:28

HÌNH ẢNH LIÊN QUAN

Bảng sau đây liệt kê một số cài đặt UNIX khá phổ biến (thường thấy có chữ ở cuối tên gọi của Hệ điều hành):  - Hệ điều hành linux và lập trình shell
Bảng sau đây liệt kê một số cài đặt UNIX khá phổ biến (thường thấy có chữ ở cuối tên gọi của Hệ điều hành): (Trang 5)
Trong hình trên, gốc của kiến trúc phân cấp này là thư mục gốc “/”. Nó gần tương tự như “C:\” trong DOS ngoại trừ việc “C:\” chính là phân vùng đầu tiên của  đĩa cứng đầu tiên, trong khi thư mục gốc “/” của Linux có thể là ánh xạ của bất kỳ  phân vùng nào - Hệ điều hành linux và lập trình shell
rong hình trên, gốc của kiến trúc phân cấp này là thư mục gốc “/”. Nó gần tương tự như “C:\” trong DOS ngoại trừ việc “C:\” chính là phân vùng đầu tiên của đĩa cứng đầu tiên, trong khi thư mục gốc “/” của Linux có thể là ánh xạ của bất kỳ phân vùng nào (Trang 17)
2.3. Môi trường làm việc đồ họa GNOME - Hệ điều hành linux và lập trình shell
2.3. Môi trường làm việc đồ họa GNOME (Trang 38)
- Desktop GNOME được chia thành 3 vùng :2 bảng điều khiển ở phiá trên và ở phiá dưới của màn hình và vùng màn hình chính ở giữa hai bảng điều khiển, được  gọi là vùng Desktop (bàn làm việc ảo) của người dùng - Hệ điều hành linux và lập trình shell
esktop GNOME được chia thành 3 vùng :2 bảng điều khiển ở phiá trên và ở phiá dưới của màn hình và vùng màn hình chính ở giữa hai bảng điều khiển, được gọi là vùng Desktop (bàn làm việc ảo) của người dùng (Trang 38)
- Bảng điều khiển phía trên có thêm các biểu tượng của một số phần mềm ứng dụng và thông tin về hệ thống như :  - Hệ điều hành linux và lập trình shell
ng điều khiển phía trên có thêm các biểu tượng của một số phần mềm ứng dụng và thông tin về hệ thống như : (Trang 39)
Như vậy đầu ra của A thông thường hoặc là thiết bị ra chuẩn (màn hình) hoặc là một  file  (là  một  tham  số  của  lệnh)  được  thay  bằng  "đầu  nhập  của  ống  dẫn" - Hệ điều hành linux và lập trình shell
h ư vậy đầu ra của A thông thường hoặc là thiết bị ra chuẩn (màn hình) hoặc là một file (là một tham số của lệnh) được thay bằng "đầu nhập của ống dẫn" (Trang 48)
w