命令执行目录

时间:2011-03-30 07:02:17

标签: python

我必须使用python子进程执行命令。

默认情况下,命令执行为处理python脚本文件所在的目录。比如

 subprocess.Popen(shlex.split("ls -l"))

将列出脚本文件目录中的文件。

但是我希望这个命令在另一个目录中执行,比方说,B。    我怎么能这样做。

我试试这个,但是faild:

env['PWD'] = "/data/a"
f = tempfile.TemporaryFile('w+b')
p = subprocess.Popen(shlex.split(cmd),stdout= f,stderr=f,env=env)

3 个答案:

答案 0 :(得分:1)

您可以使用os.chdir或将cwd参数用于Popen。

答案 1 :(得分:0)

您是否尝试更改unix命令

ls -l 

之类的东西
ls -l /usr/share;

答案 2 :(得分:0)

ls -l列出当前目录默认值中的所有项目。您可以使用ls -l

告诉命令ls -l /your-path要列出的目录