如何正确关闭IPython Notebook?

时间:2012-04-15 14:04:10

标签: python ipython ipython-notebook

如何正确关闭IPython Notebook?

目前,我只关闭浏览器标签,然后在终端中使用Ctrl+C 不幸的是,exit()和滴答Kill kernel upon exit都没有帮助(他们确实杀死了内核,但没有退出iPython)。

14 个答案:

答案 0 :(得分:103)

目前没有比终端中的Ctrl + C更好的方法。

我们正在考虑如何明确关机,但笔记本电脑作为单用户应用程序,用户可以自由停止,以及作为多用户服务器,只有管理员之间存在一些紧张关系应该能够阻止它。我们还没有完全弄清楚如何处理差异。

(对于未来的读者,这是0.12发布和0.13正在开发中的情况。)

2017年12月更新

IPython笔记本已成为Jupyter笔记本。最新版本添加了jupyter notebook stop shell命令,该命令将关闭在该系统上运行的服务器。如果端口号不是默认端口8888,则可以在命令行传递端口号。

您还可以使用nbmanager这个桌面应用程序,它可以显示正在运行的服务器并将其关闭。

最后,我们正在努力添加:

  • 如果在指定时间内未使用服务器,则自动关闭服务器的配置选项。
  • 用户界面中的一个按钮,用于关闭服务器。 (我们知道它花了很长时间才有点疯狂。改变用户界面是有争议的。)

答案 1 :(得分:20)

如果你像我一样在后台运行jupyter:

jupyter notebook &> /dev/null &

然后完全退出jupyter,而不是Ctl-C,发出一个别名命令:

echo 'alias quitjupyter="kill $(pgrep jupyter)"' >> ~/.bashrc

重新启动终端。杀死所有jupyter实例:

quitjupyter

注意:在单引号内使用双引号,如上所示。另一种方法是在将表达式写入.bashrc之前评估表达式(您希望编写命令本身不是' kill 1430'或者任何进程号可能与当前的jupyter实例相关联)。当然,您可以使用任何您想要的别名。我实际上使用了' qjup':

echo 'alias qjup="kill $(pgrep jupyter)"' >> ~/.bashrc

重新启动终端。杀死所有jupyter实例:

qjup

答案 2 :(得分:17)

我认为接受的答案已经过时,不再有效。

您可以通过文件菜单上的Web界面终止jupyter笔记本。

enter image description here

当您将鼠标光标移动到“关闭并停止”时,您将看到以下说明。

enter image description here

当您点击“关闭并暂停”时,您将在终端屏幕上看到以下消息。

enter image description here

答案 3 :(得分:5)

尝试从任务管理器(如果是Windows)中删除pythonw进程,如果没有其他工作。

答案 4 :(得分:3)

Linux (Ubuntu 14.04)

如上所述,首先尝试通过"运行"正确地杀死ipython笔记本进程。在ipynb / jupyter浏览器会话中选项卡,然后检查控制台上的打开终端并使用ctrl-c关闭。如果可能,应该避免后者。

如果您运行ipython notebook list并继续看到在不同端口运行ipython服务器,请记下现有笔记本电脑的服务端口。然后关闭TCP端口:

fuser -k 'port#'/tcp 

我不确定这样做是否还有其他风险。如果是这样,请告诉我。

答案 5 :(得分:2)

<强>环境

我的操作系统是Ubuntu 16.04,jupyter是4.3.0。

方式

首先,我在浏览器的主页上注销了jupyter(注销按钮位于右上角)

其次,在终端输入Ctrl + C并显示:

  

[我15:59:48.407 NotebookApp]中断从本地提供笔记本电脑   目录:/ home /用户名0活动内核

     

Jupyter笔记本正在运行:   http://localhost:8888/?token=a572c743dfb73eee28538f9a181bf4d9ad412b19fbb96c82

     

关闭此笔记本服务器(y / [n])?

最后一步,在5秒内输入y,如果显示:

  

[C 15:59:50.407 NotebookApp]关闭确认了   [这15:59:50.408   NotebookApp]关闭内核

恭喜!你成功地关闭了你的jupyter。

答案 6 :(得分:2)

实际上,我认为这比使用kill或任务管理器杀死进程更简洁。

在Jupyter Notebook Dashboard(首次启动时看到的浏览器界面&jupyter notebook&#39;)中,浏览到您在浏览器中关闭的笔记本文件的位置,但其内核可能仍在运行

iPython Notebook文件带有书本图标,如果有正在运行的内核,则显示为绿色;如果内核未运行,则显示为灰色。

只需选中正在运行的文件旁边的复选框,然后点击它上方显示的关机按钮。

这将正确关闭与特定笔记本相关联的内核。

答案 7 :(得分:2)

第一步是保存所有打开的笔记本。然后考虑关闭正在运行的Jupyter Notebook。您可以使用以下简单命令:

$ jupyter notebook stop 
Shutting down server on port 8888 ...

还将端口号作为参数,您可以正常关闭jupyter笔记本计算机。

例如:

jupyter notebook stop 8889 
Shutting down server on port 8889 ...

另外要了解您当前的juypter实例正在运行,请检查以下命令:

shell> juypter notebook list 
Currently running servers:
http://localhost:8888/?token=ef12021898c435f865ec706d7c9af8607a7ba58bbee98632 :: /Users/username/jupyter-notebooks [/code]

答案 8 :(得分:1)

选项1

打开其他控制台并运行

jupyter notebook stop [PORT]

默认[PORT]为8888,因此,假设Jupyter Notebooks在端口8888上运行,只需运行

jupyter notebook stop

如果在端口9000上,则

jupyter notebook stop 9000

选项2 Source

  1. 检查运行时文件夹位置

    jupyter --paths
    
  2. 删除运行时文件夹中的所有文件

    rm -r [RUNTIME FOLDER PATH]/*
    
  3. 使用top查找剩余的Jupyter Notebook运行进程,如果有,则终止其PID。

    top | grep jupyter &
    kill [PID]
    

一个人可以boilt it down

TARGET_PORT=8888
kill -9 $(lsof -n -i4TCP:$TARGET_PORT | cut -f 2 -d " ")

注意:如果要在特定IP /端口上启动笔记本电脑

jupyter notebook --ip=[ADD_IP] --port=[ADD_PORT] --allow-root &

答案 9 :(得分:1)

现在最好的方法是使用“退出”按钮左侧的“退出”按钮。我必须承认我不了解“注销”按钮的实用程序。但是,我很高兴他们添加了极为有用的“退出”按钮。

答案 10 :(得分:0)

在浏览器会话中,您还可以转到Kernel,然后点击Restart and Clear Output

答案 11 :(得分:0)

我正在从Jupyter / IPython Notebook快速入门中复制粘贴 指南文档,于2018年2月13日发布。 http://jupyter-notebook-beginner-guide.readthedocs.io/en/latest/execute.html

1.3.3关闭笔记本:内核关闭 打开笔记本时,其“计算引擎”(称为内核)将自动启动。关闭 笔记本浏览器选项卡,不会关闭内核,而是内核将一直运行直到被明确关闭。 要关闭内核,请转到关联的笔记本,然后单击菜单文件->关闭并暂停。或者, Notebook Dashboard有一个名为Running的选项卡,其中显示了所有正在运行的笔记本(即内核)并允许关闭 (单击“关机”按钮)。

摘要:首先关闭并暂停笔记本计算机的运行。

1.3.2关闭Jupyter Notebook应用程序 关闭浏览器(或选项卡)不会关闭Jupyter Notebook App。要完全关闭它,您需要 关闭关联的终端。 更详细地说,Jupyter Notebook应用程序是一台服务器,显示在浏览器中的默认地址上 (http://localhost:8888)。关闭浏览器不会关闭服务器。您可以重新打开以前的地址 并且Jupyter Notebook App将重新显示。 您可以运行Jupyter Notebook应用程序的许多副本,它们将显示在相似的地址(仅数字 在端口号“:”之后,将为每个新副本递增)。由于只有一个Jupyter Notebook应用,您可以 已经打开了许多笔记本,我们不建议运行Jupyter的多个副本 笔记本应用。

摘要:其次,退出您启动了Jupyter的终端。

答案 12 :(得分:0)

这些命令对我有用:

jupyter notebook list # shows the running notebooks and their port-numbers
                      # (for instance: 8080)
lsof -n -i4TCP:[port-number] # shows PID.
kill -9 [PID] # kill the process.

此答案改编自here

答案 13 :(得分:0)

第1步-在shell上只需执行control + z(control + c) 步骤2 _关闭网络浏览器