Khi tôi chạy export $PATHtrong bash, tôi nhận được lỗi not a valid identifier. Tại sao?
Khi tôi chạy export $PATHtrong bash, tôi nhận được lỗi not a valid identifier. Tại sao?
Câu trả lời:
Chạy export $PATHsẽ cố gắng xuất một biến có tên bằng giá trị của $PATH(sau khi tách từ ). Đó là, nó tương đương với việc viết một cái gì đó như export /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin. Và vì /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binkhông phải là một tên biến hợp lệ, nó thất bại. Những gì bạn muốn làm là export PATH.
export(tương đương với declare -x) trong Bash chỉ đơn giản là làm cho biến có sẵn cho các lớp con.
Để in giá trị của biến một cách an toàn và dễ đọc, hãy sử dụng printf %q "$PATH".
exporttừng làm việc như thế ở Bash.
Lệnh sau export $PATH=somePathsẽ trả về not a valid identifiervà đó là do $trước PATHbiến.
dung dịch:
export PATH=somePath
Bạn nên sử dụng nó theo cách này:
export PATH=$PATH:/something/bin
Thay vì:
export $PATH=$PATH:/something/bin
chỉ cần loại bỏ các $dấu hiệu từ phía bên tay trái.
Bạn có thể có nhu cầu nối thêm $ PATH vào biến PATH hiện tại của mình?
export PATH=$PATH:/something/bin
$là giá trị của Expedia. Bạn đang xuất biếnPATH, không truy cập giá trị của nó, vì vậy nóexport PATHkhông có$.