1

我有一堆模拟,我想在高性能集群上运行,我应该在上面进行预订以获得计算时间。由于预订受时间限制,因此我正在开发一个自动化脚本,我可以scp将其放入集群并运行。然后,此脚本将下载相关的模拟文件、运行它们并上传结果。

此自动化脚本的一部分位于bash( cp,scp等) 中,其余部分位于 python 中。为了开发这种自动化,我使用了一个 IPython 笔记本。

到目前为止,我已经在我的 IPython 笔记本中编写了所有 python 自动化的东西,现在我正在尝试编写它的 bash 部分。

但是,似乎魔法%%bash在我的 IPython 笔记本中不起作用。当我的单元格中有此代码时,我收到以下错误:


细胞

%%bash

echo hi

错误

  File "<ipython-input-22-62ec98e35224>", line 3
    echo hi
          ^
SyntaxError: invalid syntax

一时兴起,我尝试了这个:


细胞

%%bash

print "hi"

错误

hi
ERROR: Magic function `bash` not found.

所以我用%%system,%%!和尝试了这个%%shell。但是这些都不起作用;他们都给了我同样的错误。

为什么会这样?我怎样才能解决这个问题?

元数据:

  • IPython 0.13.dev
  • Python 2.7.1
  • Mac OS X 狮子
4

2 回答 2

0

%%bash当您尝试在 windows ipython 上使用时,您也会遇到类似的错误。%%bash那里不可用。相反,你得到%%cmd. 那是不一样的虽然cmd不是bash

于 2013-04-29T16:18:00.867 回答
0

这是由版本错误引起的。我升级了我的 IPython 版本(现在是 0.13.1),效果很好。

所以看起来这个问题使用的是开发版本(这是我安装 IPython 时的最新版本)。

于 2012-12-08T08:17:38.973 回答