win10 下的 cmd 运行命令为何要加上 exe? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
beric
V2EX    问与答

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

  •  
  •   beric 2019-08-15 19:38:04 +08:00 3710 次点击
    这是一个创建于 2256 天前的主题,其中的信息可能已经有所发展或是发生改变。
    win 10 下环境变量的中 path 加了一个包含可执行程序.exe 的目录,重启电脑后为什么在 cmd 里不能直接用程序名运行,得要加上.exe 才行。很奇怪。像 python 那样的目录就可以。
    12 条回复    2019-08-25 23:12:11 +08:00
    olaloong
        1
    olaloong  
       2019-08-15 19:56:38 +08:00 via Android
    没能复现这个问题。。。
    WIN10 1809 18362.267
    beric
        2
    beric  
    OP
       2019-08-15 20:01:06 +08:00
    @olaloong 我怀疑是我系统的问题了,有些目录可以,有些就不行,比如一个 QT 的目录包含了 gcc,我加进去后就得在 cmd 窗口里输入 gcc.exe 才行,其它的一些像 cmake 那些,加入 path 后就直接输入 cmake 就好了,很奇怪。
    sosilver
        3
    sosilver  
       2019-08-15 20:48:35 +08:00 via Android
    PathExt 环境变量查一下
    beric
        4
    beric  
    OP
       2019-08-15 21:22:38 +08:00
    @sosilver
    @olaloong 刚才一波折腾被工弄好了。我先把那个含有 exe 的目录 copy 到其它盘,路径到 path 居然是可以的。然后在重新移动回之前不行的路径并重换了个名字,居然也可以。然后改了之前不可以那个目录的目录名,也可以。……之前搞了好久都不行。搞不懂这 WIN 是怎么回事。
    ETiV
        5
    ETiV  
       2019-08-15 21:33:44 +08:00
    (话说 #3 的头像看着很像 sublime text 的 icon )

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

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

    验证的话,可以把你的目标路径放到环境变量 PATH 的开头(第一位),试试看
    hoyixi
    Tumblr
        8
    Tumblr  
       2019-08-15 21:55:35 +08:00   1
    在 path 中添加了,cmd 没有重新加载。
    其实在 Windows 10 里,还是推荐用 PowerShell 了,如果长期使用,可以在 sysdm.cpl 下修改;如果临时使用,可以直接这样修改:
    $env:path += ";_path_to_exec_"
    这样就立马生效了。
    baobao1270
        9
    baobao1270  
       2019-08-15 23:35:58 +08:00   1
    可能是 PATHEXT 变量的问题,在该变量里加入".exe"
    也可能是 PATH 目录优先级的问题
    R0n1n
        10
    R0n1n  
       2019-08-16 00:03:18 +08:00 via Android   1
    pathext 中的定义有优先级,可能是那个目录有个跟.exe 同名的.bat 或者.cmd 之类的文件...?.bat 和.cmd 等这些后缀的文件优先级比.exe 要高。
    lonewolfakela
        11
    lonewolfakela  
       2019-08-16 11:10:14 +08:00
    用 where 命令看看有没有同名的可执行的东西吧
    beric
        12
    beric  
    OP
       2019-08-25 23:12:11 +08:00
    @lonewolfakela
    @R0n1n
    @baobao1270
    @hoyixi
    @Tumblr
    感谢,之前问题就解决了,感觉是之前的目录权限有毒,也说不上来为什么。
    话说现在 win 10 更新也没个具体说明,有些老的软件突然就不正常工作了,也不知道为什么,很烦……
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2655 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 09:12 PVG 17:12 LAX 02:12 JFK 05:12
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86