Bạn có thể làm điều này đơn giản bằng cách khai báo nó là mới trong dòng lệnh hoặc khai báo lại. Ví dụ: nếu bạn muốn thêm ~/testfolder
vào biến đường dẫn của mình, bạn chỉ cần nhập nó vào thiết bị đầu cuối hiện tại của mình (đây chỉ là một ví dụ):
PATH="$HOME/testfolder:$PATH"
Điều này tất nhiên sẽ chỉ thay đổi nó trong thời gian bạn đã nói phiên cuối mở. Lưu ý $
cách sử dụng ở đây, bạn để nó ra để khai báo, nhưng nếu bạn muốn hiển thị nó, bạn cần thêm $
để mở rộng nội dung của nó.
Nếu bạn muốn khai báo chúng lâu hơn và chung chung, bạn có thể thêm chúng vào tệp ~/.bashrc
(chỉ dành cho bạn) hoặc trong /etc/bash.bashrc
(toàn hệ thống) nếu bạn muốn chúng chỉ tính cho bạn hoặc cho tất cả người dùng. Một tùy chọn khác là thêm nó vào .profile
tệp của bạn (chỉ dành cho chính bạn), nơi nó sẽ khả thi kể từ thời điểm bạn đăng nhập. Bạn có thể làm điều này với echo
ví dụ nếu bạn chắc chắn biến này chưa được đặt hoặc nếu bạn tạo mới. (chỉ một ví dụ):
echo "variable=value" >> /path/filename
Tuy nhiên, nếu bạn muốn chỉnh sửa một tệp bên ngoài thư mục người dùng của bạn, đó là trường hợp khi bạn muốn chỉnh sửa, /etc/bash.bashrc
bạn cần sử dụng sudo
và vì vậy bạn không thể sử dụng một 'tài liệu ở đây' vì điều này sẽ không hoạt động, thay vào đó hãy sử dụng một dòng như dưới đây:
echo "variable=value" | sudo tee -a /path/filename
Tuy nhiên, nếu biến đã tồn tại, bạn có thể thay đổi nó bằng sed
lệnh (cũng chỉ là một ví dụ):
sed -i.bak 's/variable=value/variable=new-value/' /path/filename
Điều này sẽ chỉnh sửa biến trong tệp nhưng tạo bản sao lưu của nó trước khi chỉnh sửa. Nếu bạn thay đổi các tập tin bên ngoài thư mục người dùng của bạn bằng sed, bạn cần sử dụng sudo
trong hầu hết các trường hợp, vì vậy dòng sẽ là:
sudo sed -i.bak 's/variable=value/variable=new-value/' /path/filename
Việc xóa một biến khỏi một tệp cũng có thể được thực hiện sed
, chỉ cần để trống phần thứ hai của biểu thức chính:
sed -i.bak 's/variable=value//' /path/filename
Nếu bạn quan tâm đến biến môi trường nào được đặt, bạn có thể sử dụng env
lệnh để liệt kê chúng ( set -o posix ; set ) | less
hoặc sh -c set
. Tất cả ba cung cấp số lượng đầu ra khác nhau, với ( set -o posix ; set ) | less
việc trả lại hầu hết các biến được đặt thực sự.
( set -o posix ; set )
nói đơn giản hơnsh -c set
. Điều này sẽ hoạt động ngay cả khish
là một liên kết tượng trưngbash
(không thường thấy trên các phiên bản Ubuntu hiện đại).