Tôi đã viết đoạn script sau để đặt một số biến môi trường khi cần.
#!/bin/sh
export BASE=/home/develop/trees
echo $BASE
export PATH=$PATH:$BASE
echo $PATH
Bên dưới lệnh và kết quả tôi có thể thấy trên thiết bị đầu cuối của mình: tập lệnh chạy, nhưng các biến không được đặt ở cuối.
~$: ./script.sh
/home/develop/trees
/bin:......:/home/develop/trees
~$: echo $BASE
~$:
Chuyện gì vậy? Cảm ơn trước. Mirko
export
chuyển các biến cho các lớp con, một lớp con là bản sao của lớp vỏ hiện tại của bạn, bao gồm các biến và hàm, v.v. Thứ hai,.
là lệnh POSIX để tìm nguồn cung ứng. Bash thêm vàosource
như một từ đồng nghĩa dễ đọc hơn cho nó, nhưng bạn không thể dựa vào nó có sẵn trong sh. Cuối cùng. ./script
thay vì. script
nếu bạn muốn tránh những điều bất ngờ. mywiki.wooledge.org/BashFAQ/060