Hướng dẫn sử dụng biến môi trường trong Linux
Giới thiệu
Biến môi trường là các đại lượng có các giá trị cụ thể. Một số biến môi trường được cung cấp các giá trị đặt trước của hệ thống và các biến khác được đặt trực tiếp bởi người dùng, tại dòng lệnh hoặc trong khi khởi động các tập lệnh khác.
Các biến môi trường cho phép bạn tùy chỉnh cách hệ thống hoạt động và hành vi của các ứng dụng trên hệ thống.
Biến môi trường là một chuỗi ký tự chứa thông tin được sử dụng bởi một hoặc nhiều ứng dụng.
Liệt kê các biến môi trường
Có một số lệnh có sẵn cho phép bạn liệt kê và đặt các biến môi trường trong Linux như sau:
env
- Lệnh cho phép bạn chạy chương trình khác trong môi trường tùy chỉnh mà không cần sửa đổi chương trình hiện tại. Khi được sử dụng mà không có đối số, nó sẽ in ra danh sách các biến môi trường hiện tại.printenv
- Lệnh in ra tất cả hoặc các biến môi trường được chỉ định.set
- Lệnh đặt hoặc bỏ thiết lập các biến shell. Khi được sử dụng mà không có đối số, nó sẽ in ra danh sách tất cả các biến bao gồm các biến môi trường và biến shell và các hàm shell.unset
- Lệnh xóa các biến shell và môi trường.export
- Lệnh thiết lập các biến môi trường.
Lệnh được sử dụng nhiều nhất để hiển thị các biến môi trường là printenv
. Nếu tên của biến được chuyển làm đối số cho lệnh, thì chỉ giá trị của biến đó được hiển thị. Nếu không có đối số nào được chỉ định, printenv
sẽ in danh sách tất cả các biến môi trường, một biến trên mỗi dòng.
Ví dụ: để hiển thị giá trị của biến môi trường HOME, chúng ta sẽ chạy:
Đầu ra sẽ là đường dẫn của người dùng hiện đang đăng nhập /root
.
Nếu chúng ta chạy lệnh printenv
hoặc env
mà không có bất kỳ đối số nào, nó sẽ hiển thị danh sách tất cả các biến môi trường.
Dưới đây là một số biến môi trường phổ biến nhất:
USER
- Người dùng đã đăng nhập hiện tại.HOME
- Thư mục chính của người dùng hiện tại.EDITOR
- Trình chỉnh sửa tệp mặc định được sử dụng. Đây là trình chỉnh sửa sẽ được sử dụng khi bạn nhập chỉnh sửa trong thiết bị đầu cuối của mình.SHELL
- Đường dẫn của shell của người dùng hiện tại, chẳng hạn như bash hoặc zsh.LOGNAME
- Tên của người dùng hiện tại.PATH
- Danh sách các thư mục được tìm kiếm khi thực hiện các lệnh. Khi bạn chạy một lệnh, hệ thống sẽ tìm kiếm các thư mục đó theo thứ tự này và sử dụng tệp thực thi được tìm thấy đầu tiên.LANG
- Cài đặt ngôn ngữ hiện tại.TERM
- Mô phỏng thiết bị đầu cuối hiện tại.MAIL
- Vị trí nơi lưu trữ thư của người dùng hiện tại.
Lệnh printenv
và env
chỉ in các biến môi trường. Nếu chúng ta muốn nhận danh sách tất cả các biến, bao gồm môi trường, shell và các biến, và các hàm shell, chúng ta có thể sử dụng lệnh set
:
Chúng ta cũng có thể dùng lệnh echo
để in một biến shell, ví dụ chúng ta muốn in giá trị của biến BASH_VERSION
chúng ta dùng lệnh như sau:
Đặt biến môi trường
Để hiểu rõ hơn sự khác biệt giữa các biến Shell và Environment, chúng ta sẽ bắt đầu với việc thiết lập các biến Shell và sau đó chuyển sang các biến môi trường.
Để tạo một biến shell với tên MY_VAR
và giá trị 123host.vn
chúng ta gõ lệnh như sau:
Chúng ta có thể xác minh rằng biến được đặt bằng cách sử dụng echo $ MY_VAR
Chúng ta sử dụng lệnh printenv
để kiểm tra xem biến này có phải là biến môi trường hay không
Đầu ra trống cho chúng ta biết rằng biến không phải là biến môi trường.
Lệnh export
được sử dụng để thiết lập các biến môi trường.
Để tạo một biến môi trường, chỉ cần xuất biến shell dưới dạng một biến môi trường như sau:
Chúng ta có thể kiểm tra bằng cách chạy lệnh sau:
Chúng ta cũng có thể đặt biến môi trường trong một dòng như sau:
Các biến môi trường được tạo theo cách này chỉ có sẵn trong phiên hiện tại. Nếu chúng ta mở một trình shell mới hoặc nếu chúng ta đăng xuất, tất cả các biến sẽ bị mất.
Biến môi trường liên tục
Để làm cho các biến môi trường bền vững, chúng ta cần xác định các biến đó trong tệp cấu hình bash. Trong hầu hết các bản phân phối Linux khi chúng ta bắt đầu một phiên mới, các biến môi trường được đọc từ các tệp sau:
/etc/environment
- Sử dụng tệp này để thiết lập các biến môi trường trên toàn hệ thống. Các biến trong tệp này được đặt ở định dạng sau:
/etc/profile
- Các biến được đặt trong tệp này được tải bất cứ khi nào đăng nhập bash shell được nhập. Khi khai báo các biến môi trường trong tệp này, chúng ta cần sử dụng lệnh export:
- Các tệp cấu hình cụ thể shell cho mỗi người dùng. Ví dụ: nếu bạn đang sử dụng Bash, chúng ta có thể khai báo các biến trong ~ / .bashrc:
Để tải các biến môi trường mới vào phiên shell hiện tại, hãy sử dụng lệnh source
:
Xóa biến môi trường
Để bỏ đặt biết môi trường chúng ta dùng lệnh unset
như sau:
Hoặc chúng ta có thể dùng
Tổng kết
Trong bài viết này chúng ta đã tìm hiểu về biến môi trường trên Linux. Hy vọng bài viết này sẽ giúp các bạn hiểu rỏ hơn về biến môi trường trong Linux
Tính năng đang được phát triển