退出 jupyter notebook 本质是终止后台服务进程,而非仅关闭浏览器标签页;最可靠方式是在启动终端中连按两次 ctrl+c,确认提示后服务停止,否则端口占用、内存不释放。

退出 Jupyter Notebook 当前运行,本质是终止后台的 jupyter notebook 服务进程,不是关掉浏览器标签页就完事——后者只关闭前端界面,服务仍在后台跑,可能占用端口、消耗内存、甚至导致下次启动报错。
Ctrl + C 在终端里连按两次最可靠
这是最常用也最稳妥的方式,适用于所有系统(Windows/macOS/Linux)和所有启动方式(conda activate 后运行、直接 jupyter notebook、或指定端口如 jupyter notebook --port=8889)。
- 必须回到当初启动 Jupyter 的那个终端窗口(比如 Anaconda Prompt、iTerm、CMD 或 PowerShell)
- 按一次
Ctrl + C通常只触发中断提示,不会立刻退出;再按一次才会真正终止服务 - 终端会输出类似
Shutting down... [I 18:05:22.123 ServerApp] Shutting down on /signal/term...的日志,之后回到命令行提示符即表示成功 - 如果终端卡住没响应,可检查是否误入了 Python 解释器(提示符变成
>>>),此时需先输入exit()或按Ctrl + Z(Windows)/Ctrl + D(macOS/Linux)退出解释器,再试Ctrl + C
File → Shut Down 不等于“退出当前运行”
这个菜单项在浏览器界面右上角的 File 下,但它只关闭当前打开的 notebook 文件和 kernel,不终止整个 Jupyter 服务进程。
- 它适合你只想清理某个 notebook 的状态(比如重启 kernel、释放内存),但还想继续用同一服务打开其他 .ipynb 文件
- 如果你已经关掉所有 notebook 标签页,再点
Shut Down,页面会跳转到空白文件列表页,但终端里的服务仍在运行 - 该操作不会释放
localhost:8888等端口,下次运行jupyter notebook可能因端口冲突而自动切到8889
关浏览器 + Ctrl + C 是常见误操作组合
很多人先关掉所有浏览器标签页,以为“退出完成”,结果发现终端还在跑、CPU 占用不降、下次启动报 Address already in use 错误。
- 单纯关闭浏览器标签页 ≠ 停止服务,kernel 和 server 进程都还活着
- 此时回到终端按
Ctrl + C才算真正退出;若终端已关闭,就得靠任务管理器(Windows)或lsof -i :8888(macOS/Linux)查杀残留进程 - 某些旧版 Jupyter 在终端提示中会出现
(y/n)或(y/z),此时务必输y回车确认终止,输z会挂起而非退出
真正的退出动作永远发生在终端侧。浏览器只是个客户端,别被它的 UI 欺骗了——哪怕你点了 Quit 按钮、关了所有 tab,只要终端里那行 [I 18:05:22.123 ServerApp] Serving notebooks from local directory 还亮着,服务就没停。











