我想在Linux下将路径附加到我的PATH环境变量中。我是在我的Python程序中临时完成此操作(通过设置os.environ['PATH']
),我希望它能够可靠地完成。我特别担心路径包含空格的情况。我尝试通过以下四种方式将这样的路径添加到PATH变量中:
/a b c:/usr/bin
"/a b c":/usr/bin
'/a b c':/usr/bin
/a\ b\ c:/usr/bin
所以对我来说,只有第一种最简单的方法起作用了。对于其他所有文件,找不到我的可执行文件。这有点出乎意料,因为我确定我应该始终意识到带空格的路径并以某种方式处理它们。这种行为可靠吗?还是会中断,并且还有其他方法可以将带有空格的路径正确添加到PATH?
感谢您的关注!我确实在Internet上进行了搜索,但是除了以下链接之外,我找不到该信息:https://apple.stackexchange.com/questions/94679/how-do-cope-with-a-space-when-setting-the-path。但是这里是关于如何添加到PATH的路径的,而不是关于是否可以在没有引号,反斜杠或其他任何东西的情况下使用它。
答案 0 :(得分:0)
由于在PATH环境变量中没有特殊含义,因此不需要转义空格。 因此,如果将路径附加到PATH环境变量中,则可以完全忽略该路径中是否存在空格。
代码:
import os
path_to_add = '/home/user/My Path' # A path with space
print(os.environ['PATH']) # Prints /usr/local/bin:/usr/sbin
os.environ['PATH'] += os.pathsep + path_to_add
print(os.environ['PATH']) # Prints /usr/local/bin:/usr/sbin:/home/user/My Path