更改IPython / Jupyter笔记本工作目录
当我打开Jupyter笔记本(以前称为IPython)时,它默认为C:\Users\USERNAME
。
我怎样才能改变这个到另一个位置?
谢谢。
jupyter notebook --help-all
帮助jupyter notebook --help-all
可能的帮助:
--notebook-dir=<Unicode> (NotebookManager.notebook_dir) Default: u'/Users/me/ipynbs' The directory to use for notebooks.
如果需要,您当然可以将其设置在您的configuration文件中,但您可能需要在Windows中转义反斜杠。
对于在Windows中使用IPython的人来说, 一个巧妙的诀窍就是你可以在你devise的每个项目目录中创build一个ipython图标,使用笔记本指向所select的项目。 这有助于保持独立。
例如,如果您在C:\ fake \ example \目录中有新项目
将ipython笔记本图标复制到该目录,或者创build一个到Windows“cmd”shell的新链接。 然后右键点击图标和“编辑属性”
将快捷方式属性设置为:
Target: C:\Windows\System32\cmd.exe /k "cd C:\fake\example\directory & C: & ipython notebook --pylab inline" Start in: C:\fake\example\directory\
(注意在“开始”的末尾添加了斜杠)
这将运行Windows命令行,更改为您的工作目录,并运行指向该目录的ipython笔记本。
将其中的一个放在每个项目文件夹中,您将使ipython笔记本组保持良好的分离状态,同时仍然只需双击即可。
更新:IPython已经取消了对pylab命令行内联的支持,所以用这个技巧修复这个问题就是如果你有一个更新的IPython版本(或者只是不想要pylab),就可以消除“–pylab inline”。
JUPYTER NOTEBOOK〜版本4.1.1的更新
在我的testing机器上,并在下面的评论中报告,最新的jupyter版本似乎检查启动目录,并启动与作为工作目录。 这意味着不需要工作目录覆盖。
因此,你的捷径可以是如此简单:
Target (if jupyter notebook in path): jupyter notebook Target (if jupyter notebook NOT in path): C:\Users\<Your Username Here>\Anaconda\Scripts\jupyter.exe notebook
如果jupyter笔记本不在你的PATH中,你只需要在命令前添加完整的目录参考。 如果这不起作用,请尝试从早期版本开始工作。 非常方便,现在“开始于:”可以在4.1.1及更高版本的testing中为空。 也许他们在SO上阅读这个条目并且很喜欢它,所以很长一段时间以来,没有人需要这个了:)
除了Matt的方法之外, 永久更改笔记本默认目录的一种方法是更改configuration文件。 首先在cmdline中input:
$> ipython profile create
用默认的configuration文件初始化configuration文件。 其次,在文件ipython_notebook_config.py
,取消注释并编辑这一行:
# c.NotebookManager.notebook_dir = 'D:\\Documents\\Desktop'
将D:\\Documents\\Desktop
更改为您喜欢的任何path。
这适用于我;)
更新:没有c.NotebookManager.notebook_dir
了。 现在,取消注释和configuration的行是这样的: c.NotebookApp.notebook_dir = 'Z:\\username_example\folder_that_you_whant'
在Windows上的iPython Notebook中,这为我工作:
cd d:\folder\
正如MrFancypants在评论中提到的那样,如果你使用Jupyter (你应该这样做,因为它现在取代了旧的IPython Notebook项目),事情有点不一样 。 首先,没有更多的configuration文件。
安装Jupyter后 ,首先检查您的〜/ .jupyter文件夹以查看其内容。 如果没有configuration文件从默认IPythonconfiguration文件迁移(因为它们不是我的情况),为Jupyter Notebook创build一个新configuration文件:
jupyter notebook --generate-config
这将生成〜/ .jupyter / jupyter_notebook_config.py文件,并提供一些有用的评论。 要设置默认目录,请添加:
c.NotebookApp.notebook_dir = u'/absolute/path/to/notebook/directory'
当我在Linux和OS X之间切换时,我想使用一个相对于我的home文件夹的path(因为它们不同 – / Users / username和/ home / username ),所以我设置了如下所示:
import os c.NotebookApp.notebook_dir = os.path.expanduser('~/Dropbox/dev/notebook')
现在,每当我运行jupyter notebook
,它打开我想要的笔记本文件夹。 我还将我部署到每台新工作机器的dotfiles存储库中的整个〜/ .jupyter文件夹版本化 。
--notebook-dir
,你仍然可以使用--notebook-dir
命令行选项,所以也许一个简单的别名会更好地满足你的需求。
jupyter notebook --notebook-dir=/absolute/path/to/notebook/directory
%pwd #look at the current work dir %cd #change to the dir you want
通常$ ipython notebook
将在terminal的当前工作目录下启动笔记本和内核。
但是,如果您要指定启动目录,则可以使用--notebook-dir
选项,如下所示:
$ ipython notebook --notebook-dir=/path/to/specific/directory
对上面的Windows Trick进行更简单的修改 – 不需要对目录进行硬编码。
A)创build一个包含以下内容的batch file:(注意:batch file是一个简单的文本文件,包含可以在cmd窗口中运行的命令,它必须有一个'.bat'扩展名,需要禁用隐藏已知types扩展名的文件夹设置)
rem -- start_ipython_notebook_here.bat --- dir ipython notebook pause
B)将batch file复制并粘贴到要启动笔记本服务器的任何文件夹中。
(请确保它是一个您有权编辑的文件夹。“C:\”不是一个好的select。)
C)双击Windows资源pipe理器中的batch file。
笔记本服务器应该像平时一样启动。
对于Linux和Window:只需修改1行,你可以改变它。
1. Open file
cwp.py
在
C:\ Users \ [您的计算机名称] \ Anaconda2
。
2. find the line
os.chdir(documents_folder)
在文件的末尾。
将其更改为
os.chdir(“你期望的工作文件夹”)
例如:os.chdir(“D:/ Jupyter_folder”)
3. save and close.
有效。
更新:
说到MacOS,我找不到cwp.py. 这是我发现的:
在Macbook上打开terminal,运行“ jupyter notebook –generate-config ”。
它将在\ Users \ catbuilts \ .jupyter \ jupyter_notebook_config中创build一个configuration文件。
打开configuration文件,然后改变这一行#c.NotebookApp.notebook_dir ='' (search单词“_dir”)
到c.NotebookApp.notebook_dir =' 你的path ' ,记得也不要评论这一行。
例如,我的是“/ Users / catbuilts / Jupyter_Projects /”
运行ipython之前:
- 将目录更改为您的首选目录
- 运行ipython
运行ipython后:
- 使用
%cd /Enter/your/prefered/path/here/
- 使用
%pwd
来检查你的当前目录
从命令行启动时,IPython Notebook将使用您当前的工作目录。 我利用了这一点,并创build了上下文菜单条目直接从Windows资源pipe理器中打开它。 不需要快捷方式或批处理脚本!
我受到Git for Windows创build的基于registry的“Git GUI Here / Git Bash Here”的启发。 这个页面 (链接的存档版本)有助于查找正确的密钥。
这第一对是上下文菜单没有select(例如目录背景)。 笔记本将打开当前目录作为工作目录。
Key: HKCR\Directory\Background\shell\ipythonnb Value: &IPython Notebook Here Key: HKCR\Directory\Background\shell\ipythonnb\command Value: "<full path to IPython notebook>" "%v"
这对是用于点击文件夹时显示的上下文菜单。 笔记本将打开选定的文件夹,因为它是工作目录。
Key: HKCR\Directory\shell\ipythonnb Value: &IPython Notebook Here Key: HKCR\Directory\shell\ipythonnb\command Value: "<full path to IPython notebook>" "%1"
注意%v
和%1
参数,否则它将不起作用。 不要忘记引号。 在我的平台上,IPython Notebook的完整path是C:\WinPython-32bit-2.7.6.4\IPython Notebook.exe
但是这个值显然取决于你的安装。
编辑: AFAICT即使可执行文件在系统path上,也需要完整path。
为了在OS X中为Windows执行相同的技巧,创build这个shell脚本
#!/bin/bash cd $(dirname "$0") && pwd ipython notebook
将其称为ipython-notebook.command并使其可执行。
把它放在你想要工作的目录中,然后双击它。
find你的ipython二进制文件。 如果您使用anaconda在mac上安装ipython-notebook,则可能会出现在/Users/[name]/anaconda/bin/
目录中
在那个目录下,而不是启动你的笔记本
./ipython notebook
添加一个--notebook-dir=<unicode>
选项。
./ipython notebook --notebook-dir=u'../rel/path/to/your/python-notebooks'
我在我的ipython bin目录中使用了一个bash脚本来启动我的笔记本:
DIR=$(dirname $0) $DIR/ipython notebook --notebook-dir=u'../rel/path/to/your/python-notebooks'
注 – 笔记本目录的path是相对于ipython bin目录的。
在Windows下的MiniConda2 / Anaconda2上更改Jupyter或iPython的工作目录,可以修改这个文件:
C:\Program Files\Miniconda2\cwp.py
并添加您的项目文件夹位置: development_folder ='C:\ Users \ USERNAME \ Development'这是我的用户名\发展在我的情况。
还将os.chdir(documents_folder)更改为os.chdir(development_folder)
try: documents_folder = get_folder_path(FOLDERID.Documents) development_folder= 'C:\Users\USERNAME\Development' except PathNotFoundException: documents_folder = get_folder_path(FOLDERID.PublicDocuments) os.chdir(development_folder) subprocess.call(args, env=env)
使用常规的Jupiter Notebook快捷方式执行。
只要转到CMD中的首选目录,所以如果你在
C:\Users\USERNAME>
只要改变这样的path
C:\Users\USERNAME>cd D:\MyProjectFolder
CMD光标将移动到该文件夹
D:\MyProjectFolder>
接下来你可以打电话给Jupyter
D:\MyProjectFolder>jupyter notebook
对于Windows 10
-
在C:\ Users \ your_user_name \ .jupyter中查找jupyter_notebook_config.py,或者使用cortana查找它。
-
如果你没有,那么去cmd行input:
jupyter笔记本–generate-config
-
打开jupyter_notebook_config.py并执行ctrl-fsearch:
c.NotebookApp.notebook_dir
-
通过删除#取消注释。
-
将其更改为:
c.NotebookApp.notebook_dir ='C:/ your / new / path'
注意:你可以把au放在第一个的前面,把\改成\ ,或者改成to,我认为不重要。
- 转到您的Jupyter笔记本链接并右键单击它。 select属性。 进入快捷菜单,然后点击目标。 寻找%USERPROFILE%。 删除它。 保存。
import sys sys.path.append('C:/')
我有32位和64位的Python和ipython使用WinPython,我希望32位和64位版本指向ipython笔记本相同的工作目录。
我在这里遵循上述build议我仍然无法让我的设置工作。
以下是我所做的 – 如果有人需要它:
它看起来像Ipython笔记本使用从C:\pythonPath\winpythonPath\settings\.ipython\profile_default
即使 ipython locate
返回C:\users\Username\.ipython
因此,修改ipython_notebook_config.py文件并没有改变我的工作目录。
另外ipython profile_create
不是在C:\pythonPath\winpythonPath\settings\.ipython\profile_default
创build所需的python文件
我确定有一个更好的方法 ,但为了快速解决这个问题,我将编辑后的Python文件从C:\users\Username\.ipython\profile_default
到C:\pythonPath\winpythonPath\settings\.ipython\profile_default
现在(最后)ipython笔记本64位运行,并提供给我正确的工作目录
在Windows上的注意我没有与下面的语法问题:
c.NotebookApp.notebook_dir = u'C:/Users/Path_to_working_directory'
只需按照官方网站上的指南 ,也复制下面。 对于第一步,而不是复制启动器,你可以去开始菜单,并右键单击打开位置。
将Jupyter Notebook启动程序从菜单复制到桌面。
右键单击新的启动器,并通过粘贴包含所有笔记本的文件夹的完整path来更改“开始”字段。
双击Jupyter Notebook桌面启动器(图标显示[IPy])以启动Jupyter Notebook App,该应用程序将在新的浏览器窗口(或标签)中打开。 还要注意,辅助terminal窗口(仅用于错误logging和closures)也将被打开。 如果只有terminal启动,请尝试使用浏览器打开此地址: http:// localhost:8888 / 。
如果您在Linux中使用ipython,请按照以下步骤操作:
!cd /directory_name/
你可以尝试在你的linuxterminal上运行的所有命令。
!vi file_name.py
只需在你的linux命令之前指定感叹号(!)符号即可。
对于目标目录中带有空格的Mac OS X(跟随@pheon)。 因此,在第2行的$(…)周围添加一对额外的双引号。 请参阅: https : //stackoverflow.com/a/1308838 (肖恩·布莱特)
#!/bin/bash cd "$(dirname "$0")" && pwd ipython notebook
我有一个非常有效的方法来将笔记本电脑保存在Windows所需的位置。
- 一次性活动:确保
jupyter-notebook.exe
的path保存在环境variables下。 - 从Windows资源pipe理器中打开所需的目录,或从命令提示符下打开CD
- 从所需文件夹的Windows资源pipe理器中,select地址栏(以完全selectpath标签的方式)并键入
jupyter-notebook.exe
- 瞧! 笔记本从所需的文件夹打开,任何新的笔记本将保存在这个位置。
在input“ jupyter notebook
”之前的命令行中导航到所需的文件夹。
在我的情况下,我所有的Python文件都在“D:\ Python”中。
然后键入命令“jupyter笔记本”,你有它。 你已经改变了你的工作目录。
当我searchipython change pwd
时,这个问题不断出现,即使我对notebook
不感兴趣,而是terminal或qtconsole。 没有find相关的configuration条目我试过了:
# lines of code to run at IPython startup. c.InteractiveShellApp.exec_lines = ['%cd /home/paul/mypy']
这是基本级的shell
类; 有terminal和控制台(可能是笔记本)条目,可以进一步定制的行动。
从文档看来, import
语句在入口中是最常见的,但是看起来许多魔法命令也是如此。
如果您在Windows中使用ipython,请按照以下步骤操作:
- 在程序中导航到ipython笔记本,并右键单击它并转到属性。
- 在快捷方式选项卡中,将“开始”目录更改为所需的目录。
- 重新启动内核。
您还可以使用一个简单的脚本来使用AutoHotKey在默认目录(CTRL + I)中打开一个Jupyter Notebook服务器,或者在资源pipe理器(或其他位置使用CTRL + SHIFT + I)突出显示的path。
#SingleInstance Force #NoTrayIcon SetTitleMatchMode RegEx ; Press CTRL+ALT+I in a Windows Explorer window to launch a IPython notebook server in the current folder. ^+!i:: ; Get the current path. Send ^l ; Backup the current clipboard. ClipSaved := ClipboardAll ; Copy and save the current path. Send ^c ClipWait x = %Clipboard% ; Restore the clipboard. Clipboard := ClipSaved ClipSaved = ; Free the memory in case the clipboard was very large. ; Now, run the IPython notebook server. RunWait, ipython notebook --notebook-dir "%x%", , min return ^i:: ; Now, run the IPython notebook server. RunWait, jupyter notebook --notebook-dir "C:\Path\To\Workspace", , min return ; Press CTRL+ALT+P to kill all Python processes. ^!p:: Run, taskkill /f /im python.exe, , min return
如果您在Windows中安装了最新版本的Python,Upper Solution可能无法正常工作。 我已经安装了Python 3.6.0 :: Anaconda 4.3.0(64位),我想更改iPython Notebook的工作目录,名为Jupyter,这就是我的工作方式。
步骤1:打开您的CMD并input以下命令。
第一步:CMD
第二步:现在在.jupyter文件夹中生成一个文件。 对我来说,它是C:\ Users \ Admin.jupyter。 在那里你会find一个名为jupyter_notebook_config.py的文件。右击并编辑它。 添加以下行并设置工作目录的path。 设置你自己的工作目录代替“I:\ STUDY \ Y2-Trimester-1 \ Modern Data Science”
我们完了。 现在您可以尝试重新启动Jupyter Notebook。 希望这对你有用。 谢谢
根据官方Jupyter笔记本文档更改
%用户资料%
到您的文件夹path
文档链接
我会在这里添加一长串答案。 如果你在Windows /使用Anaconda3,我通过转到文件/Scripts/ipython-script.py来完成这项工作,只是添加了行
import os os.chdir(<path to desired dir>)
在线之前
sys.exit(IPython.start_ipython())