Начну с того, что Jupyter лучше ставить в основное окружение, а для всех остальных виртуальных сред создавать kernel-ы, которые впоследствии подключать к конкретному ноутбуку. Тогда для старта будет достаточно запустить терминал и набрать:
jupyter lab (или jupyter notebook)
Удобный старт/стоп
Чтобы основное окружение было активно при старте терминала (если python установлен корректно, этого делать не придется), можно прописать в файле .bash_profile (иногда в других, например, .bashrc в зависимости от вида системы), находящемся в пользовательской директории (если его нет, создайте) команду активации окружения:
source /Users/19036412/Documents/python/envs/main/bin/activate
Возможно, команда активации будет другая (подробнее читай здесь)
Для останова Jupyter можно из другого окна терминала набрать:
jupyter lab stop (или jupyter notebook stop)
Однако не всегда удобно, что старт Jupyter блокирует командную строку, чтобы этого избежать можно запустить среду в фоновом режиме (& после команды) и указать, чтобы стандартный вывод и вывод ошибок осуществлялся в несуществующее устройство (&> /dev/null):
jupyter lab &> /dev/null & (или jupyter notebook &> /dev/null &)
Еще комфортнее станет работать после настройки псевдонимов для команд старта и останова все в том же .bash_profile (например):
alias ejup='jupyter lab stop'
alias sjup='jupyter lab &> /dev/null &'
Настройка Kernel-ов
Для создания kernel-а в виртуальную среду:
устанавливаем пакет
ipykernel (pip install ipykernel)
сохраняем kernel:
python -m ipykernel install --user --name имя_среды --display-name "отображаемой_имя"
--name используется для внутренних нужд, а --display-name отображается в меню выбора ядер.