Коли я бігаю export $PATH
в bash, я отримую помилку not a valid identifier
. Чому?
Коли я бігаю export $PATH
в bash, я отримую помилку not a valid identifier
. Чому?
Відповіді:
Запуск export $PATH
буде намагатися експортувати змінну з ім'ям , рівним значенню з $PATH
(після слів розщеплення ). Тобто, це рівнозначно написанню чогось подібного export /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
. А оскільки /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
це неправдиве ім'я змінної, воно не працює. Те, що ви хочете зробити - це export PATH
.
export
(еквівалентно declare -x
) в Bash просто робить змінну доступною для підрозділів.
Щоб друкувати значення змінної безпечно та читано, використовуйте printf %q "$PATH"
.
export
коли-небудь працював так у Bash.
Наступна команда export $PATH=somePath
буде повертати not a valid identifier
і це через $
до PATH
змінної.
рішення:
export PATH=somePath
Ви повинні використовувати його таким чином:
export PATH=$PATH:/something/bin
Замість:
export $PATH=$PATH:/something/bin
просто зніміть $
знак з лівої сторони.
Напевно, у вас була потреба додати $ PATH до вашої існуючої змінної PATH?
export PATH=$PATH:/something/bin
$
це "value of". Ви експортуєте зміннуPATH
, не отримуючи доступу до її значення, значить,export PATH
немає$
.