如何启动Python ipython shell,在其中自动运行一些命令,并保持打开状态?

时间:2010-06-14 04:51:27

标签: python bash shell ipython

我试过

echo "print 'hello'" | ipython

哪个运行命令但是ipython会立即退出。

有什么想法吗?谢谢!

修改 我实际上需要将命令传递给交互式Django shell,例如:

echo "print 'hello'" | python manage.py shell

所以-i开关gimel建议似乎不起作用(shell在执行后仍然退出)

4 个答案:

答案 0 :(得分:4)

使用标准解释器-i使用的相同标志。

  

-i

     

当脚本作为第一个参数传递或使用-c选项时,在执行脚本或命令后进入交互模式,即使sys.stdin似乎不是终端。未读取PYTHONSTARTUP文件。

Linux示例,使用-c command line flag

$ ipython -i -c 'print "hello, ipython!"'
hello, ipython!

In [2]: print "right here"
right here

In [3]:

答案 1 :(得分:2)

尝试使用〜/ .ipython

中的ipy_user_conf.py

答案 2 :(得分:0)

我不确定ipython但基本的python解释器有一个命令行参数,在你执行你给它的文件后给你提示。我没有方便的口译员告诉你它是什么,但你可以使用python --help得到它。它应该完全符合您的要求。

答案 3 :(得分:0)

运行custom startup script/profile script with the Django shell was marked as closed: wontfix

然而,在该票证中讨论了一个shell_plus Django扩展,似乎可以做你想要的。我没有机会查看它,但它看起来至少可以运行一个负载来自动导入所有已安装应用程序的所有模型(我通常发现自己在做)。