我在.ipynb文件中有一些代码,并且我不需要IPython Notebook的"交互"功能.我想直接从Mac终端命令行运行它.
基本上,如果这只是一个.py文件,我相信我可以从命令行执行python filename.py..ipynb文件有类似的东西吗?
有没有人知道是否可以从命令行以非交互方式运行IPython/Jupyter笔记本,并将结果.ipynb文件与运行结果一起保存.如果还不可能,使用phantomJS实现有多难,可以打开和关闭内核,以及打开和关闭Web服务器的东西?
更具体地说,假设我已经有一个笔记本original.ipynb,我想重新运行该笔记本中的所有单元格并将结果保存在新笔记本中new.ipynb,但是在命令行上使用一个命令执行此操作,而无需在浏览器中进行交互或关闭内核或Web服务器,并假设没有内核或Web服务器已在运行.
示例命令:
$ ipython notebook run original.ipynb --output=new.ipynb
我正在本地计算机上编写Jupyter笔记本,该笔记本最终将在远程服务器(运行Ubuntu)上运行。每次需要进行更改时,都必须将笔记本导出为.py文件,然后从服务器的命令行调用它。
我希望能够即时运行此命令,调用一个命令以获取当前.ipynb文件,并像在a一样在命令行中执行它.py,显示所有打印语句和输出(如果.py运行了) 。我认为nbconverter可以使用以下命令来解决问题:
jupyter nbconvert --to script --execute nbconvert_test.ipynb
Run Code Online (Sandbox Code Playgroud)
如此一来,它并没有像我希望的那样将转换为.ipynb要.py在命令行上执行的文件,而是nbconvert_test.py在同一个目录中创建了一个新文件,然后我必须在单独的命令中运行该文件。我真的很想防止每次更改时都创建该文件,并跳过命令行上的额外步骤。
任何帮助表示赞赏!