Обычно $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