我想构建一个python脚本,它可以操纵它调用bash shell的状态,特别是它的工作目录。
使用os.chdir
或os.system("ls ..")
,您只能更改解释器路径,但是如何将注释更改应用于脚本调用者呢?
谢谢你的提示!
你不能直接从python那里做到这一点,因为子进程永远不能改变其父进程的环境。
但是你可以创建一个从shell派生的shell脚本,即它在同一个进程中运行,在那个脚本中,你将调用python并使用它的输出作为cd
目录的名称:
/home/choroba $ cat 1.sh
cd "$(python -c 'print ".."')"
/home/choroba $ . 1.sh
/home $