【发布时间】:2015-12-04 18:17:57
【问题描述】:
我正在尝试通过 python 脚本更改终端目录。我看过这个post 和其他喜欢它的人,所以我知道 os.chdir,但它并没有按照我想要的方式工作。 os.chdir 似乎更改了目录,但仅适用于 python 脚本。例如我有这个代码。
#! /usr/bin/env python
import os
os.chdir("/home/chekid/work2/")
print os.getcwd()
不幸的是,运行后我仍然在 python 脚本的目录中(例如 /home/chekid),而不是我想要的目录。见下文。
gandalf(pts/42):~> pwd
/home/chekid
gandalf(pts/42):~> ./changedirectory.py
/home/chekid/work2
gandalf(pts/42):~> pwd
/home/chekid
对我应该做什么有什么想法吗?
编辑:看起来我正在尝试做的事情在“普通”python 中不存在。我确实找到了解决方法,尽管它对我来说看起来并不那么优雅。
cd `./changedirectory.py`
【问题讨论】:
-
python 脚本改变了它自己的目录。巴什没有改变。请注意,您的要求与假设如果您在 python 脚本中打开一个文件,该文件也应该在您的桌面上打开是一样的
-
你做不到。这就是为什么
cd始终是一个 shell 内置命令,而不是一个外部程序。 -
也许你想使用
os.system()? -
@SantoshKumar:行不通,
system有点“运行自己的外壳”。
标签: python