beric
V2EX  ›  问与答

win10 下的 cmd 运行命令为何要加上 exe?

  •  
  •   beric · Aug 15, 2019 · 4146 views
    This topic created in 2506 days ago, the information mentioned may be changed or developed.
    win 10 下环境变量的中 path 加了一个包含可执行程序.exe 的目录,重启电脑后为什么在 cmd 里不能直接用程序名运行,得要加上.exe 才行。很奇怪。像 python 那样的目录就可以。
    12 replies    2019-08-25 23:12:11 +08:00
    lxc404
        1
    lxc404  
       Aug 15, 2019 via Android
    没能复现这个问题。。。
    WIN10 1809 18362.267
    beric
        2
    beric  
    OP
       Aug 15, 2019
    @olaloong 我怀疑是我系统的问题了,有些目录可以,有些就不行,比如一个 QT 的目录包含了 gcc,我加进去后就得在 cmd 窗口里输入 gcc.exe 才行,其它的一些像 cmake 那些,加入 path 后就直接输入 cmake 就好了,很奇怪。
    sosilver
        3
    sosilver  
       Aug 15, 2019 via Android
    PathExt 环境变量查一下
    beric
        4
    beric  
    OP
       Aug 15, 2019
    @sosilver
    @olaloong 刚才一波折腾被工弄好了。我先把那个含有 exe 的目录 copy 到其它盘,路径到 path 居然是可以的。然后在重新移动回之前不行的路径并重换了个名字,居然也可以。然后改了之前不可以那个目录的目录名,也可以。……之前搞了好久都不行。搞不懂这 WIN 是怎么回事。
    ETiV
        5
    ETiV  
       Aug 15, 2019
    (话说 #3 的头像看着很像 sublime text 的 icon )

    忙猜:PATH 路径下有个没有 exe 的文件(路径)存在,所以执行不到?加了 exe,就能找到 LZ 想要的文件了

    不知道 win 下有没有 which、whereis 这种存在,可以看看
    hoyixi
        6
    hoyixi  
       Aug 15, 2019
    你说的不能运行,报什么错?
    hoyixi
        7
    hoyixi  
       Aug 15, 2019   ❤️ 1
    看了你 4 楼,感觉可能是环境变量里的某个其它路径(这个路径在环境变量里的顺序,先于你的目标路径)下,包含了同名文件,但是该文件不可运行

    验证的话,可以把你的目标路径放到环境变量 PATH 的开头(第一位),试试看
    Tumblr
        8
    Tumblr  
       Aug 15, 2019   ❤️ 1
    在 path 中添加了,cmd 没有重新加载。
    其实在 Windows 10 里,还是推荐用 PowerShell 了,如果长期使用,可以在 sysdm.cpl 下修改;如果临时使用,可以直接这样修改:
    $env:path += ";_path_to_exec_"
    这样就立马生效了。
    baobao1270
        9
    baobao1270  
       Aug 15, 2019   ❤️ 1
    可能是 PATHEXT 变量的问题,在该变量里加入".exe"
    也可能是 PATH 目录优先级的问题
    R0n1n
        10
    R0n1n  
       Aug 16, 2019 via Android   ❤️ 1
    pathext 中的定义有优先级,可能是那个目录有个跟.exe 同名的.bat 或者.cmd 之类的文件...?.bat 和.cmd 等这些后缀的文件优先级比.exe 要高。
    lonewolfakela
        11
    lonewolfakela  
       Aug 16, 2019
    用 where 命令看看有没有同名的可执行的东西吧
    beric
        12
    beric  
    OP
       Aug 25, 2019
    @lonewolfakela
    @R0n1n
    @baobao1270
    @hoyixi
    @Tumblr
    感谢,之前问题就解决了,感觉是之前的目录权限有毒,也说不上来为什么。
    话说现在 win 10 更新也没个具体说明,有些老的软件突然就不正常工作了,也不知道为什么,很烦……
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   896 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 20:42 · PVG 04:42 · LAX 13:42 · JFK 16:42
    ♥ Do have faith in what you're doing.