Как оболочки, такие как bash
, сначала получают путь и / или среду? Это файл?
Вот что я пробовал:
/ etc / paths
(Очевидно, существует в MacOS, не может найти в моем Debian
system)
Простая загрузка $ path
(Это своего рода чит для того, что я делаю, но это
вариант, если он существует)
Google fu (Вытягивает только результаты о том, как изменить и установить путь обычно через оболочку)
Обычно $PATH
унаследован от среды, и сценарии запуска оболочки могут его модифицировать.
Но если переменная окружения не задана, значит, она имеет жестко запрограммированное значение по умолчанию, которое зависит от версии (или, возможно, параметров конфигурации, заданных при компиляции).
В моей системе OS X под управлением bash 3.2.57(1)-выпуск
$ env -i bash --norc --noprofile -c 'echo $PATH'
/usr/gnu/bin:/usr/local/bin:/bin:/usr/bin:.
В Debian под управлением bash 4.2.37(1)-выпуск
$ env -i bash --norc --noprofile -c 'echo $PATH'
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Вы можете подтвердить, что это сложно. кодируется в двоичный код с помощью
strings /bin/bash | grep /usr/local/bin