Я пытаюсь оптимизировать свой рабочий процесс и поэтому хочу выполнить команду из программы python, которая откроет терминал, переключится в указанный каталог c и затем запустит команду, в этом случае активируйте виртуальный environment.
Этот вопрос похож на этот. Однако я не уверен, как обрабатывать вызов virtualenv.
import subprocess
subprocess.run(['gnome-terminal', '--working-directory', '/home/jeff/projects', 'bash \"workon wagtail\" '])
Что происходит? новое окно создается в правильном каталоге, но workon не вызывается
Работа в терминале, если я использую
gnome-terminal --working-directory='/home/jeff/projects' -- bash -ci "source /usr/bin/virtualenvwrapper.sh && workon ; exec bash;"
Команда работает, но работа выполняется до появления подсказки терминала
Если я запускаю
gnome-terminal --working-directory='/home/jeff/projects' -- bash -ci "source /usr/bin/virtualenvwrapper.sh && workon wagtail; exec bash;"
, терминал не входит в venv (трясогузку). Однако команда
workon wagtail
находится в истории терминала