【问题标题】:windows equivalent of ./ (current directory) [closed]相当于./(当前目录)的windows [关闭]
【发布时间】:2026-01-12 21:15:02
【问题描述】:

在 Linux 上,当我想执行某个文件并使用相对路径时。

例如我想做这样的事情:

cd c:\windows
c:\windows>./System32/ipconfig.exe

但是我得到的是一条错误消息,告诉我“。”还没找到。

【问题讨论】:

    标签: linux windows command-line


    【解决方案1】:

    句点表示 Windows 中的当前目录。

    对于您的示例,您将使用以下内容:

    c:\> cd c:\windows
    c:\Windows> .\System32\ipconfig.exe
    

    或者,您可以放弃 .\ 并这样做:

    c:\Windows> System32\ipconfig.exe
    

    【讨论】:

    • 谢谢,现在看起来很简单
    【解决方案2】:

    使用正确的斜线,你应该会很好。 Windows 使用反斜杠作为目录符号而不是正斜杠。 唯一需要注意的是,如果您必须更改驱动器号。 cd 命令将更改工作目录,但不会更改驱动器。要更改驱动器,请使用[drive letter][colon]:

    C:\Windows>cd P:\XenApp\Utils    
    C:\Windows>P:    
    P:\XenApp\Utils>
    

    【讨论】:

    • 我的赞成票,但还有几件事:Windows old 命令行仅接受 \ ,Windows 本身适用于两种路径分隔符(\ /)。使用cd,您还可以使用/d 标志更改驱动器:cd /d p:/XepApp/Utils。嗯,顺便说一句,我不明白关于驱动器号的警告......无论如何。
    • 谢谢阿德里亚诺,我没有使用 /d 标志。
    • @AdrianoRepetti:对正斜杠的支持全面。它不仅仅是命令行。我强烈建议您只使用反斜杠,以避免被抓住,例如,*.com/questions/31256655/file-open-ignoring-path
    • @harry 我强烈认为这是库问题,而不是操作系统问题...操作系统 API 接受这两者,但并非所有库在操作路径时都可以正确接受两者。
    • @AdrianoRepetti:IIRC,有一些 Win32 API 不接受正斜杠,虽然我不记得细节所以我可能记错了。当然,Windows 的某些部分(例如资源管理器)以及 cmd.exe 没有。而且您不能将它们与长路径名(超过 260 个字符的路径)一起使用。