Computer >> Máy Tính >  >> Hệ thống >> Linux

Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Bash cho phép bạn ánh xạ toàn bộ chuỗi văn bản thành các biến đơn lẻ, giúp đơn giản hóa việc sử dụng và viết script. Chúng hoạt động như thế nào và bạn có thể sử dụng chúng như thế nào? Hãy cùng tìm hiểu.

Biến là gì?

Các biến là những tên dễ nhớ có thể chứa các giá trị chữ và số khác nhau. Chúng hữu ích vì chúng cho phép áp dụng cùng một hàm trên các giá trị khác nhau mà không cần phải viết lại tập lệnh / đoạn mã. Chúng cũng giúp việc viết tập lệnh / đoạn mã trở nên dễ dàng, vì thay vì xử lý các giá trị riêng lẻ, bạn có thể sử dụng cùng một tên cho tất cả chúng.

Biến thời gian thực

Bash cho phép sử dụng các biến. Bạn có thể tạo các biến một cách nhanh chóng và sử dụng lại chúng trong phiên Bash hiện tại của mình. Họ có thể hỗ trợ bạn sử dụng Bash theo nhiều cách khác nhau và chúng sẽ biến mất sau khi phiên hiện tại kết thúc.

Ví dụ:giả sử bạn đang truy cập một loạt các trang web. Bạn có thể đang nghiên cứu hoặc thu thập dữ liệu. Bạn có thể tạo biến sau:

sitea=https://www.maketecheasier.com
Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Sau đó, nếu bạn muốn truy cập trang web của chúng tôi bằng Firefox, bạn chỉ cần nhập:

firefox $sitea
Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Dễ dàng hơn nhiều - và dễ đọc hơn. $sitea biến sẽ vẫn được ánh xạ tới trang web cho đến khi bạn thay đổi nội dung của nó theo cách thủ công hoặc phiên Bash kết thúc. Và, tất nhiên, bạn có thể tạo nhiều biến hơn, chẳng hạn như siteb , sitecsited .

Khi thiết lập các biến mới, bạn có thể sử dụng bất kỳ tên nào bạn muốn và lưu trữ bất kỳ chuỗi chữ và số nào bên trong chúng. Tuy nhiên, hãy nhớ rằng chúng phân biệt chữ hoa chữ thường theo mặc định. Do đó, $sitea sẽ không giống với $SiteA . Ngoài ra, lưu ý rằng bạn nên sử dụng dấu ngoặc kép khi lưu trữ các chuỗi có ký tự đặc biệt bên trong chúng (bao gồm cả dấu cách).

Các biến trong Tập lệnh

Các biến trong Bash hữu ích hơn khi viết tập lệnh vì chúng cho phép bạn viết một tập lệnh duy nhất, sau đó có thể lặp lại qua các chuỗi khác nhau hoặc hoạt động trên các phần dữ liệu tùy chỉnh. Giả sử bạn đang viết một tập lệnh mà mọi người có thể sử dụng trên máy tính của họ, nhưng mỗi lần sẽ hiển thị một lời chào được cá nhân hóa. Nếu không có biến, bạn phải viết một phiên bản khác của tập lệnh cho mỗi người dùng. Với các biến, bạn giữ nguyên tập lệnh và chỉ thay đổi tên của người dùng.

Tập lệnh như vậy sẽ trông giống như sau:

#!/bin/bash
username=Odysseas
echo $username
Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Ví dụ trên có vẻ thừa; tuy nhiên, khi độ phức tạp của mã tăng lên, các biến trở nên không thể thiếu. Một tập lệnh có thể dài hàng trăm hoặc hàng nghìn dòng và chứa tên của người dùng ở các vị trí khác nhau. Để hiểu rõ hơn, hãy xem xét tập lệnh hơi khác sau:

Tên người dùng
#!/bin/bash username=Linus
echo Hello $username. This is a simple script I wrote that will repeat your name - that is, $username - often as an actual example of how to use Bash variables. I hope it will make it easier to understand how to use variables to improve your Bash workflow, $username. In this case, the variable username is mapped to your name. Whenever Bash runs into it, it replaces it with $username.
Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Tập lệnh trên sẽ sử dụng tên được xác định là username biến để hoàn thành văn bản. Nếu sử dụng tên của người dùng thực, bạn phải nhập tên đó bốn lần. Sau đó, làm tương tự cho người dùng tiếp theo và bốn lần nữa cho người tiếp theo. Lặp đi lặp lại. Bằng cách gán nó cho một biến, bạn chỉ phải thay đổi nó một lần cho mỗi người dùng và mọi đề cập đến tên của người dùng trong văn bản sẽ được cập nhật.

Các biến và bí danh Bash vĩnh viễn

Chúng tôi đã thấy cách bạn có thể tạm thời đặt các biến và cách bạn có thể đưa chúng vào các tập lệnh của riêng mình đối với một thứ lâu dài hơn. Tuy nhiên, không thể thiết lập vĩnh viễn các biến trong Bash? Câu trả lời là một "yup!" và bạn chỉ phải chỉnh sửa một tệp duy nhất:“~ / .bashrc”.

Mở tệp “~ / .bashrc” trong trình soạn thảo văn bản yêu thích của bạn. Vì tôi thích nano hơn, tôi đã làm điều đó với:

nano ~/.bashrc
Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Chúng tôi khuyên bạn nên bắt đầu với một lần chạy thử nghiệm, chỉ thêm một biến duy nhất, để bạn sẽ biết phải xem ở đâu nếu quá trình không hoạt động. Di chuyển đến cuối tệp và trong một dòng mới, hãy thêm biến của bạn. Ví dụ:tôi đặt một biến cho tên của mình là:

myname="Odysseas Kourafalos"
Biến Bash là gì và bạn có thể sử dụng chúng như thế nào?

Lưu tệp của bạn và thoát khỏi trình chỉnh sửa. Các chỉnh sửa sẽ không được áp dụng ngay lập tức. Nhập thông tin sau vào thiết bị đầu cuối của bạn để nó có hiệu lực:

nguồn
source ~/.bashrc

Bây giờ bạn có thể sử dụng biến mới được đặt trong phiên Bash của mình:

echo $myname

Bạn có thể thiết lập bao nhiêu biến tùy thích và đơn giản hóa rất nhiều cuộc phiêu lưu hàng ngày của bạn trong Bash.

Để tăng thêm năng suất, bạn cũng nên thiết lập một loại biến khác:bí danh. Không giống như các biến điển hình, được ánh xạ tới dữ liệu mà bạn có thể sử dụng trong các lệnh, bí danh được sử dụng thay vì các lệnh thực tế.

Cũng giống như bạn có thể sử dụng một biến đơn giản dễ nhớ để chứa các chuỗi văn bản dài, bạn có thể sử dụng bí danh làm lựa chọn thay thế dễ dàng cho các lệnh phức tạp. Bạn có thể tìm thêm về chúng tại đây, nơi chúng tôi chuyển toàn bộ lệnh nén 7zip thành bí danh hai ký tự.

Lưu ý cuối cùng, ngay cả khi bạn đã đặt vĩnh viễn một biến trong .bashrc, bạn có thể tạm thời chỉ định lại một giá trị khác cho nó, như chúng ta đã thấy trước đây. Biến sẽ hiển thị nội dung mới cho đến khi phiên Bash hiện tại kết thúc (sau khi đăng xuất hoặc khởi động lại) hoặc bạn lấy lại nguồn tệp .bashrc.