我可以从打开的jupyterlab(或jupyternotebook)会话中运行shell命令,并在shell命令之前添加一个感叹号,如下所示:
!mkdir /new_folder
这以及其他命令,例如ls
和pwd
都可以使用,尽管如果我尝试使用cd
更改目录,如下所示,< / p>
!cd /path/to/mydir
这不起作用,我注意到当前的工作目录将始终是保存我的jupyter笔记本(.ipynb)的目录。
如果我这样做,也很奇怪:
!cd /path/to/mydir && pwd
即使在下面的单元格上,我也会打印出/path/to/mydir
!pwd
我将获得保存jupyternotebook的当前目录,即,显然,我最终无法在jupyternotebook中使用!cd
更改工作目录。
有人知道这个问题可能是什么吗?
答案 0 :(得分:1)
您不能使用!cd
从Jupyter笔记本浏览文件系统。原因是笔记本中的shell命令在一个临时子shell中执行。如果要更改工作目录,可以使用%cd
magic命令:
!pwd
/d/swatchai_works/tutorial/jupyter
%cd ..
/d/swatchai_works/tutorial
!pwd
/d/swatchai_works/tutorial
%cd jupyter
/d/swatchai_works/tutorial/jupyter