2011-03-07 146 views
0

我希望能够轻松地使用ipython通过使用“!”来重写一些bash脚本。命令。不幸的是,如果我尝试在非交互模式下运行IPython中,像这样:在非交互模式下运行ipython

ipython -p sh myipythonscript.py 

其中myipythonscript.py包含这样的命令:

env=%env 
d=!ls 

这是行不通的。我得到了SyntaxError。 有没有允许ipython以非交互模式运行的选项?

+2

用.ipy扩展名重命名文件,它似乎工作! – pontikos 2011-03-09 13:52:04

回答

0

Python也有模块,可以很容易地完全取代bash调用。这些更容易调试并提供更好的错误处理。

例如,而不是ls你可以使用glob,它支持相同的语法:

files=glob.glob('myfiles*.txt') 

环境变量:

env = os.environ 

的路径相关的功能:

os.path 

对于常见操作,os.mkdir,os.chmodos.getcwd [与密码相同]