Я пытаюсь запустить скрипт, который открывает несколько вкладок терминала gnome, а затем запускает команды в среде Pipenv. Чтобы убедиться, что я запускаю команды после ~/.bashrc
, я следовал за ответом на на этот вопрос. Кажется, это работает без проблем. Однако проблема возникает, когда я запускаю эту команду для запуска сервера Django в виртуальной среде:
BASH_POST_RC='pipenv shell && ./manage.py runserver' gnome-terminal --tab --title="My tab"
Команда приводит к следующему:
Загрузка переменных среды .env ... Запуск subshell в виртуальной среде .... /home/daniel/.local/share/virtualenvs/my-env/bin/activate Shell для UNKNOWN_VIRTUAL_ENVIRONMENT уже активирован. Никаких действий не предпринимается, чтобы избежать вложенных сред.
Казалось бы, как-то, что он думает, что он уже находится в виртуальной среде, а это не так. И я не в виртуальной среде, когда я запускаю команду в первую очередь. Более того, другие команды, похоже, не запускаются после pipenv shell
. Это просто ничего не делает.
Как я могу решить это?
Я обнаружил, что Pipenv имеет a run
управляйте для выполнения документов на получение Python непосредственно в виртуальной среде. Таким образом, все, что я сделал, было использовать:
BASH_POST_RC='pipenv run python manage.py runserver' gnome-terminal --tab --title="Django server"