Добавить командную строку в «запуск приложений». Это сработало для меня (, по крайней мере, на Ubuntu 18.04 ).
Не используйте профиль для этого. Вместо этого добавьте свои изменения в ~/.bashrc
. Это файл, наиболее часто используемый для такого рода вещей, который вы хотите оценивать для каждой открытой оболочки.
Итак, просто удалите свои изменения из ~/.profile
и вместо этого добавьте их в ~/.bashrc
. Для получения дополнительной информации о том, какие файлы и при каких обстоятельствах читаются, см. ответ на нашем дочернем сайте Ask Ubuntu :
Это зависит от вашей графической среды (LXDM, XFCE, KDE и т. д. ). Некоторые из них не являются источниками ~/.bash_profile
.
Если у вас есть причина его использовать (, например. по причинам совместимости ), вы можете получить его в своем ~/.bashrc
(, ожидая, что вы используете bash
в качестве оболочки по умолчанию ).
echo "source ~/.bash_profile" >> ~/.bashrc
Этот метод имеет некоторые недостатки.
Я бы порекомендовал использовать что-то, что изначально работает с вашей настройкой.
/etc/profile
Проверьте поведение среды рабочего стола. LXDM, например, будет источником следующего (, а не~/.bash_profile
):
/etc/profile
~/.profile
/etc/xprofile
~/.xprofile
Ссылки:
РЕДАКТИРОВАТЬ:
В ответ на ваше редактирование :Как и ожидалось, помощник не использует источник ~/bash_profile
по умолчанию.
Кое-что о дизайнерских решениях (, потому что вы спросили об этом в своем последнем комментарии ). Обычно вы устанавливаете переменные среды только в своем ~/.bash_profile
, /etc/profile
и т. д., поэтому я бы подумал о том, чтобы переместить ваш скрипт в другое место, а не в ~/.bashrc
.
То, что вы делаете, очень специфично для оболочки. Разумно поместить его в ~/.bashrc
.
Если вы используете несколько оболочек, вы можете разделить их на разные файлы.Например, определите свой VIRTUAL_ENV_DISABLE_PROMPT
внутри файла среды, такого как /etc/profile
, создайте новый сценарий bash с функцией virtualenv_info()
и используйте сценарий только в среде оболочки, где он вам нужен. Это было бы чистым решением, но оно будет работать, если вы поместите весь скрипт только в свой ~/.bashrc
.