经典Jupyter Notebook编辑家目录外及隐藏目录文件的解决方案问询
经典版Jupyter Notebook访问家目录外文件、隐藏目录的可行方案
下面是经过实测可用的几种workaround方案,可根据使用场景选择:
- 启动时指定根目录(临时使用场景首选)
启动Jupyter Notebook时追加--notebook-dir参数指定浏览根路径即可,比如要访问全系统所有有权限的路径,直接指定根目录:jupyter notebook --notebook-dir=/
要直接进入隐藏目录~/.config也可以直接指定对应路径:jupyter notebook --notebook-dir=~/.config
这种方案不需要修改任何配置,用完下次启动还是默认家目录,适合临时访问特殊路径的需求。 - 修改配置文件永久生效
如果你需要长期访问家目录外或者隐藏路径,可以修改全局配置:- 先生成默认配置文件(如果还没有的话):
jupyter notebook --generate-config - 打开生成的
~/.jupyter/jupyter_notebook_config.py文件,找到如下配置项修改:- 取消
c.NotebookApp.notebook_dir的注释,赋值为你需要的默认根路径,比如c.NotebookApp.notebook_dir = '/' - 追加配置
c.ContentsManager.allow_hidden = True,开启隐藏文件/目录的显示权限
配置完成后重启Jupyter Notebook即可永久生效。
- 取消
- 先生成默认配置文件(如果还没有的话):
- 快捷键临时切换隐藏文件显示
如果不需要永久开启隐藏文件显示,只在需要的时候查看,可以在Jupyter的文件浏览页面按下Ctrl + H快捷键,即可一键切换隐藏文件的显示/隐藏状态,不需要重启服务。 - 创建软链接映射(无权限改配置场景首选)
如果你没有权限修改Jupyter配置,或者不想改动全局启动参数,可以在Jupyter默认访问的家目录下创建软链接,指向你需要访问的外部目录或者隐藏目录:
创建完成后在Jupyter的文件列表里就可以直接点击软链接进入对应目录操作。# 映射外部磁盘目录 ln -s /mnt/data ~/jupyter_data # 映射隐藏目录 ln -s ~/.config ~/my_config - 直接修改浏览器地址栏访问已知路径文件
如果你明确知道要编辑的文件的绝对路径,可以直接在浏览器的Jupyter地址栏修改路径快速打开:
比如你当前的Jupyter地址是http://localhost:8888/tree,要编辑~/.config/pip/pip.conf,把地址改成http://localhost:8888/edit/home/你的用户名/.config/pip/pip.conf回车即可直接进入编辑页面。
注意:所有方案的前提是Jupyter运行身份对目标路径/文件有对应的读写权限,权限不足时会出现访问报错。
内容的提问来源于stack exchange,提问作者mirekphd
相关产品推荐
相关产品推荐

