Dav*_*itt 5 python directory bash shell terminal
我正在研究一个简单的Python脚本,可以使用subprocess和/或os执行一些命令,这些工作正常.
但是,当脚本退出时,我想要cd实际的终端(在本例中为OS X),所以在退出时,新文件可以在创建目录的目录中使用.以下所有的(subprocess.Popen,os.system,os.chdir)可以做我想从什么中的脚本(即它们在目标目录中执行的东西),但在退出离开码头在脚本自己的目录,而不是目标目录.
我想避免将shell脚本写入临时文件只是为了实现这一目标,如果这种情况完全可能吗?
Nic*_*tin 10
可悲的是没有.不允许进程更改其父进程的环境,在这种情况下,您的Python脚本是shell的子进程.您可以通过让Python进程设置一个新的shell调用子进程来打开shell进程并将其呈现给用户,从自身继承修改后的环境,从而"伪造"它 - 但这有助于强制Python进程运行不断.
这真的是shell脚本的用途.. :-)有人显然需要编写一个更传统的shell(比如接近Bash而不是IPython),它可以使用python作为脚本语言.
| 归档时间: |
|
| 查看次数: |
2535 次 |
| 最近记录: |