Как правильно закрыть IPython Notebook?
Как правильно закрыть IPython Notebook?
В настоящее время я просто закрываю вкладки браузера, а затем использую Ctrl+C
в терминале.
К сожалению, ни exit()
, ни тикание Kill kernel upon exit
не помогают (они убивают ядро, но не выходят из iPython).
Ответы
Ответ 1
В настоящее время нет лучшего способа сделать это, чем Ctrl + C в терминале.
Мы думаем о том, как иметь явное закрытие, но есть некоторое напряжение между ноутбуком как однопользовательским приложением, где пользователь может его остановить, и как многопользовательский сервер, где только администратор должен быть в состоянии остановить его. Мы еще не совсем поняли, как справиться с различиями.
(Для будущих читателей это ситуация с выпуском 0.12 и 0,13 в разработке.)
Обновление Декабрь 2017
Ноутбук IPython стал ноутбуком Jupyter. В недавней версии добавлена команда оболочки jupyter notebook stop
, которая отключит сервер, запущенный в этой системе. Вы можете передать номер порта в командной строке, если это не порт 8888 по умолчанию.
Вы также можете использовать nbmanager, настольное приложение, которое может показывать запущенные серверы и закрывать их.
Наконец, мы работаем над добавлением:
- Параметр конфигурации для автоматического отключения сервера, если вы не используете его в течение указанного времени.
- Кнопка в пользовательском интерфейсе, чтобы закрыть сервер. (Мы знаем это немного сумасшедшим, что это заняло много времени. Изменение пользовательского интерфейса является противоречивым.)
Ответ 2
Если вы запускаете jupyter в фоновом режиме, как я:
jupyter notebook &> /dev/null &
Затем, чтобы полностью выйти из jupyter, вместо Ctl-C выполните команду alias:
echo 'alias quitjupyter="kill $(pgrep jupyter)"' >> ~/.bashrc
Перезагрузите терминал. Убейте все экземпляры jupyter:
quitjupyter
Примечание. Используйте двойные кавычки внутри одинарных кавычек, как показано выше. Другой способ будет оценивать выражение перед тем, как записать его в ваш .bashrc(вы хотите сами написать команду "kill 1430" или любой номер процесса, который может быть связан с текущим экземпляром jupyter). Конечно, вы можете использовать любой псевдоним, который вы хотите. Я действительно использую "qjup":
echo 'alias qjup="kill $(pgrep jupyter)"' >> ~/.bashrc
Перезагрузите терминал. Убейте все экземпляры jupyter:
qjup
Ответ 3
Я думаю, что принятый ответ устарел и больше не действителен.
Вы можете завершить работу jupyter notebook из веб-интерфейса в файле menü item.
![введите описание изображения здесь]()
Когда вы перемещаете курсор мыши на "close and halt", вы увидите следующее объяснение.
![введите описание изображения здесь]()
И когда вы нажимаете "закрыть и остановить", на экране терминала появится следующее сообщение.
![введите описание изображения здесь]()
Ответ 4
Попробуйте убить процесс pythonw из диспетчера задач (если Windows), если ничего не работает.
Ответ 5
Linux (Ubuntu 14.04)
Как уже упоминалось, попытайтесь правильно обработать процессы ipython для ноутбука, перейдя на вкладку "running" в вашем сеансе браузера ipynb/jupyter, а затем проверьте открытые терминалы на консоли и выключите ctrl-c. Последствия следует избегать, если это возможно.
Если вы запустите ipython notebook list
и продолжаете видеть запущенные серверы ipython в разных портах, обратите внимание на порты, которым обслуживаются существующие ноутбуки. Затем выключите порты TCP:
fuser -k 'port#'/tcp
Я не уверен, есть ли другие риски, связанные с этим. Если да, то дайте мне знать.
Ответ 6
На самом деле, я считаю, что есть более чистый способ, чем убийство процесса (ов) с помощью диспетчера задач или задач.
В Jupyter Notebook Dashboard (интерфейс браузера, который вы видите при первом запуске "jupyter notebook" ), перейдите к расположению файлов ноутбуков, которые вы закрыли в браузере, но чьи ядра все еще могут работать.
Файлы iPapton для ноутбуков отображаются с иконкой книги, обозначенной зеленым цветом, если у нее есть работающее ядро, или серым, если ядро не работает.
Просто выберите галочку рядом с запущенным файлом, затем нажмите кнопку "Завершение", которая появляется над ней.
Это правильно отключит ядро, связанное с этим конкретным ноутбуком.
Ответ 7
В сеансе браузера вы также можете перейти к Kernel
, а затем нажмите Restart and Clear Output
.
Ответ 8
Окружающая среда
Моя ОС - Ubuntu 16.04, а jupyter - 4.3.0.
Метод
Во-первых, я вышел из jupyter на своей домашней странице в браузере (кнопка выхода в верхнем правом углу)
Во-вторых, введите Ctrl + C
в свой терминал, и он отобразит:
[I 15: 59: 48.407 NotebookApp] прервано Обслуживание ноутбуков из локальных directory:/home/Username 0 активных ядер
Jupyter Notebook работает на: http://localhost:8888/?token=a572c743dfb73eee28538f9a181bf4d9ad412b19fbb96c82
Выключение сервера ноутбука (y/[n])?
Последний шаг, введите y
в течение 5 секунд, и если он показывает:
[C 15: 59: 50.407 NotebookApp] Выключение подтверждено
[I 15: 59: 50,408 NotebookApp] Выключение ядра
Congrats! Вы успешно закрываете свой юпитер.