Lenh bash trong linux
Nếu từng sử dụng Linux trong một thời gian dài, chắc chắn bạn đã không ít lần nhìn thấy từ “Bash” xuất hiện ở đâu đó, có thể là trên các diễn đàn và những bài báo. Đôi khi nó có vẻ giống như một từ đồng nghĩa với thiết bị đầu cuối, nhưng Bash và trình giả lập thiết bị đầu cuối chắc chắn là hai khía cạnh khác nhau. Vậy Bash chính xác là gì trong Linux? Trong bài viết ngắn này, hãy cùng Quantrimang khám phá ý nghĩa của Bash, nó có chức năng gì và bạn có thể sử dụng nó ra sao. Show
Định nghĩa của Bash trong LinuxBash trong Linux trên thực tế là từ viết tắt của Bourne-Again SHell, một cách chơi chữ liên quan đến Stephen Bourne - tên gọi của người sáng tạo ra GNU này. Bản beta đầu tiên của Bash được phát hành vào năm 1989 và cho đến thời điểm viết bài, nó đã sang tới phiên bản 5.1, với bản cập nhật gần nhất vừa được ra mắt tháng 12 năm 2020. Bash là một trong những ngôn ngữ shell phổ biến nhất, được biết đến với sự kết hợp của các khả năng mạnh mẽ và hệ thống lệnh thân thiện với người dùng. Cụ thể hơn, trong Bash có sự tổng hòa của các tính năng nổi trội từ C Shell (csh), Korn Shell (ksh) và tuân thủ các thông số kỹ thuật shell POSTIX 2. Nó mang đến một giao diện dòng lệnh (CLI) để làm việc trên các hệ thống *nix, do đó dần trở thành một trong những shell phổ biến nhất được sử dụng trên các hệ thống Linux. Tuy nhiên, Bash không chỉ hoạt động trên Linux, mà cũng có sẵn trên macOS và BSD. Đặc biệt, bạn có thể sử dụng nó trên Windows thông qua tiện ích Windows Subsystem for Linux. Nhưng suy cho cùng, để thực sự định nghĩa được khái niệm Bash, chúng ta phải hiểu shell là gì. Shell là một ứng dụng chấp nhận dữ liệu đầu vào từ người dùng và thực hiện một hành động để phản hồi, đồng thời giao tiếp với nhân (kernel) để thực thi các hành động tương ứng. Theo cách này, shell có thể được ví như một "lớp vỏ" xung quanh hạt nhân. Trong khi shell khởi tạo nhiều ứng dụng khác nhau thông qua các lệnh, chúng cũng thường sở hữu những tính năng tương tác. Ví dụ: khi bạn mở một thiết bị đầu cuối Linux và nhấn nút mũi tên lên để truy xuất lệnh được phát hành cuối cùng, đó là một chức năng của ứng dụng Bash. Lệnh cd để thay đổi thư mục cũng là một lệnh Bash rất phổ biến. Lệnh cdNgoài vai trò là một ứng dụng tương tác, Bash còn là một ngôn ngữ kịch bản (scripting language). Hệ điều hành Linux của bạn trên thực tế sử dụng rất nhiều tập lệnh Bash trong quá trình khởi động để bắt đầu các quy trình khác nhau. Bạn có thể sử dụng Bash như thế nào?Trên thực tế, bạn đang dùng đến Bash bất cứ khi nào sử dụng thiết bị đầu cuối trong hầu hết mọi hệ thống Linux. Nếu chưa rõ, bạn có thể xác nhận điều đó bằng lệnh sau đây. Lệnh này sẽ trả về tên của shell đang được sử dụng:
Kết quả là bạn sẽ chỉ nhận được từ bash trả về. Sau đó, bạn có thể kiểm tra phiên bản Bash đang sử dụng bằng lệnh này:
Màn hình của bạn sẽ trông như sau: Kết quả sau khi chạy lệnhTuy nhiên, việc đưa ra các lệnh đơn trong thiết bị đầu cuối chỉ là bước khởi đầu cho việc sử dụng Bash. Giống như những tập lệnh mà hệ điều hành sử dụng, bạn có thể học cách viết các tập lệnh Bash để tự động hóa các quy trình trên PC Linux mà mình thường làm theo cách thủ công. Một Bash scripter lành nghề có thể sở hữu các script tự động hóa hàng trăm nhiệm vụ mỗi ngày! Vậy làm thế nào bạn có thể học sử dụng Bash?Câu trả lời rất đơn giản: Bằng cách thực hành viết scripts, theo cách của riêng bạn hoặc được hướng dẫn, chẳng hạn như tham gia vào một khóa học Bash trực tuyến. Đối với các game thủ, các bạn cũng có thể học bằng cách chơi trò chơi Bash. Chẳng hạn như Bashcrawl, một trình thu thập dữ liệu dungeon dựa trên văn bản buộc bạn phải học và nhớ lại các lệnh Bash để tiến triển trong trò chơi. Đã đăng vào thg 2 25, 2018 2:27 CH 8 phút đọc Mở đầuVới những người dùng thường xuyên sử dụng các hệ điều hành Linux cho công việc thì việc thao tác với các dòng lệnh là điều cần thiết và rất quan trọng. Tuy nhiên bất kì ai đã, đang hoặc từng sử dụng Linux thì đều nhận ra các điều sau đây:
Vấn đề này làm cho Bash script trở nên vô cùng hữu ích. Các script viết ra có thể đảm nhiệm được một công việc ngay lập tức thay vì phải gõ lại một loạt các câu lệnh phức tạp. Việc này có thể rút ngắn được thời gian làm việc trên Linux tuy nhiên cần mất công học thêm một ngôn ngữ kịch bản lệnh - Bash script. Bash script là gìBash script là một loại ngôn ngữ kịch bản (tương tự như Perl, Python, Lua ...), thường được viết bởi con người và thực thi bởi máy tính. Cũng giống như các ngôn ngữ khác, Bash script cũng có riêng một trình thông dịch đó là BASH (Bourne Again SHell). Có 2 cách để Bash script được thực thi:
Tất nhiên ta cũng có thể cấp quyền thực thi cho file bash đó để nó có thể chạy như một chương trình. Bạn có thể tham khảo thêm trong bài viết Cơ bản về phân quyền cho file trong Linux (phần 2) để cấp quyền thực thi cho file đó. Ví dụ một file BashỞ đây tôi có một file bash đơn giản với nội dung như trong hình: File này khi thực thi sẽ
chỉ in ra dòng chữ Những điểm quan trọng cần lưu ý của một Bash scriptDãy kí tự #! (shebang)Dòng chứa kí tự này sẽ là dòng thông báo cho hệ điều hành biết file script này sẽ được thực thi bởi chương trình nào. Trong trường hợp bạn không biết chính xác trình thông dịch của Bash nằm ở đâu, bạn có thể dùng Đặc tên fileCó thể nói rằng
file Bash script không yêu cầu bất cứ một điều kiện gì ngoại trừ điều kiện của hệ điều hành để đặt tên file. Bất kể một tên gì cũng được chấp nhận, phần mở rộng cũng không quan trọng. Lấy ví dụ, bạn có thể đặt tên file Bash script là CommentLà những dòng lệnh chỉ có tác dụng chỉ dẫn hoặc mô tả và sẽ được bỏ qua trong file Bash, những dòng này sẽ được bắt đầu bằng dấu # (she). Cần lưu ý là không nên lạm dụng comment, chỉ cần những lúc thực sự cần thiết, quá nhiều comment có thể làm cho người đọc file thấy khó khăn trong việc tìm hiểu công việc được thực thi với file này là gì. Variable trong BashVariable (hay biến) là khái niệm dùng để chỉ các phần dữ liệu được lưu trữ tại một ô nhớ cụ thể trong bộ nhớ máy tính và có thể gọi trực tiếp thông qua tên (VD một biến gọi là
Một số chương trình cần truyền tham số dòng lệnh vào để sử dụng, Bash cho phép sử dụng một số biến đặc biệt sau:
Đặc biệt, có thể lưu đầu ra của một câu lệnh khác vào một biến bằng cách sử dụng một trong 2 cách sau:
VD: Câu lệnh điều kiệnVới mọi ngôn ngữ lập trình hiện đại ngày nay, câu lệnh điều kiện là một tính năng không thể thiếu. Tính năng này dùng để đưa ra quyết định về các lệnh sẽ được thực hiện dựa theo các điều kiện cho trước. Những
từ khóa Bash hỗ trợ 3 dạng của câu lệnh điều kiện:
Thông trường
Một số ví dụ:
Lời kếtTrong phần 1 của bài viết này tôi đã giới thiệu về Bash script và các vấn đề liên quan đến sử dụng biến hoặc câu lệnh điều kiện. Trong phần 2 tôi sẽ tiếp tục giới thiệu về các vấn đề khác của Bash script như luồng điều khiển (Flow control) và
các lệnh tiện ích của Bash ( Tài liệu tham khảo
All rights reserved |