Bash читает .profile
только из оболочек входа в систему, для других интерактивных оболочек он читает вместо этого .bashrc
. (То же для /etc/profile
и /etc/bash.bashrc
). Во многих системах, включая Debian, значение по умолчанию /etc/bash.bashrc
устанавливает PS1
, поэтому для оболочек входа без -это то, что используется.
Ваш эмулятор терминала, вероятно, запускает оболочку как не -оболочку входа в систему, хотя, по крайней мере, некоторые из них могут быть настроены для запуска вместо нее оболочки входа. Например. Терминал Gnome должен иметь флажок «Выполнять команду как оболочку входа в систему», и если эмулятор позволяет вам изменить команду, которую он вызывает, вы можете использовать/bin/bash -l
(-l
или --login
для обозначения оболочки входа ).
Если вы не установили PS1
в одном из файлов bashrc
, оболочка, которая была запущена без PS1
в среде, в конечном итоге имела бы PS1
по умолчанию, давая что-то вроде bash-4.4$
, поэтому, вероятно, безопаснее всего установить PS1
в bashrc
.
Также обратите внимание, что если оболочка запущена как оболочка входа в систему, она не будет читать bashrc
сама по себе. Вот почему файлы profile
, например. Debian делает это явно.
Связанные: