【发布时间】:2016-02-10 06:47:32
【问题描述】:
我在主目录中有一个 .py 文件,其中包含以下三行:
import os
os.system("cd Desktop/")
os.system("ls")
我希望它从“桌面”目录“ls”,但它显示 /home 目录的内容。
我查看了这些页面:
Calling an external command in Python
http://ubuntuforums.org/showthread.php?t=729192
但我不明白该怎么做。有人可以帮帮我吗?
【问题讨论】:
-
试试 os.system("ls Desktop/")
-
与
os.chdir和os.listdir相比,您是否有理由需要使用外部进程? -
另外,旁注:如果您确实需要运行外部进程,
os.system比使用各种subprocess函数更慢/更不安全/更不灵活。os.system在子 shell 中启动所有命令(这会引入参数解析、shell 元字符等可能存在的可靠性和安全性问题),其中类似subprocess.check_call的命令和参数的list既更快又更安全。