Python3os.popen公司()专注于特定目录的windows资源管理器

2024-10-03 04:26:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一些代码可以为用户打开Windows资源管理器,但它总是以“我的文档”为中心打开,我知道这是Windows资源管理器的默认设置。在

我可以将其后退一级到当前用户名目录,但不能强制它在由变量定义的网络驱动器>文件夹中打开。我尝试过使用OS-vb脚本添加焦点(不得不尝试一些东西,它在语法上看起来非常相似?)但这仍然会忽略文件夹路径并求助于用户目录:

def Open_Win_Explorer_and_Select_Dir():
    import subprocess
    fldr2opn = currentproject.get()
    # os.popen('start explorer,"%s" ' % fldr2opn)
    os.popen('c:\windows\EXPLORER.EXE /n, /select, "%s"' % fldr2opn)

如果我在os.popen()前面放一个print(fldr2opn)语句,它在本例中返回正确的路径"P:\Projects_2013\test_dir"所以我知道这是正确的,只是os.popen语法让我困惑不解。在


Tags: 代码用户文档路径目录文件夹定义os
2条回答

对于那些仍然需要答案的人,我设法用这种方式打开了一个特定的目录:

    # For an absolute path or relative from My Documents
    import subprocess
    p = subprocess.Popen('C:\Windows\EXPLORER.EXE /n /cwd="' + directory + '"')
    p.wait()

    # For a relative path from the current directory
    import subprocess
    import os
    p = subprocess.Popen('C:\Windows\EXPLORER.EXE /n /cwd="' +
                         os.getcwd() + os.sep + directory + '"')
    p.wait()

消除选项之间的空白:

os.popen('c:\windows\EXPLORER.EXE /n,/select,%s' % fldr2opn)

要使其在要打开的路径中使用空格,建议将subprocess.Popen()

^{pr2}$

相关:Windows Explorer command line options

相关问题 更多 >