Python:CD到Linux用户桌面

时间:2014-02-15 10:09:42

标签: python directory cd

我需要将目录(CD)更改为Linux用户的桌面。现在,Linux用户名是一个变量,所以我尝试了路径,但当然它不会工作:

import os
os.chdir("/path/to/dir")

所以我尝试了以下内容:

   subprocess.call("cd", "~/Desktop")
   subprocess.call("pwd")

但是我收到了以下错误:

Traceback (most recent call last):
  File "SIPHON.py", line 132, in <module>
    subprocess.call("cd", "~/Desktop")
  File "/usr/lib/python2.7/subprocess.py", line 522, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/lib/python2.7/subprocess.py", line 658, in __init__
    raise TypeError("bufsize must be an integer")
TypeError: bufsize must be an integer

如何使用Python在Linux中cd到用户的桌面?

提前致谢。

1 个答案:

答案 0 :(得分:1)

您需要使用os.path.expanduser展开~作为实际路径:

>>> os.path.expanduser('~/Desktop')
'/home/falsetru/Desktop'

os.chdir(os.path.expanduser('~/Desktop'))