侥幸或命名错误

侥幸或命名错误

在我的目录下,C:\Users\ME我有一个名为 的目录C:\Users\ME\Invoices。这是我保存簿记和所有内容的地方。但是,我创建了一个*.bat文件,我将其命名为Invoices.bat。我敢打赌每个人都知道这是怎么回事,在文件中我有以下脚本:

start C:\Users\ME\Invoices

由于某种原因,Windows CMD 陷入循环并不断产生 CMD 提示。谢天谢地,我的电脑没有崩溃,我关闭了窗口。然而,这个问题让我感到好奇,当然我对此很感兴趣PATH=C:\Users\ME。系统是否对启动什么感到困惑?还是因为它们有相同的名称,我偶然将*.bat文件名更改为Bookkeeping.bat,它执行得很好?我想知道你对这个问题的看法,这是一个侥幸,还是同名错误。我想指出的是,我在 explorer.exe 运行和不运行的情况下都尝试过。

答案1

start

当执行命令行的第一个标记不包含扩展名时,CMD.EXE 将使用 PATHEXT 环境变量的值来确定要查找哪些扩展名以及查找顺序。PATHEXT 变量的默认值为:

    .COM;.EXE;.BAT;.CMD

Notice the syntax is the same as the PATH variable, with
semicolons separating the different elements.

并且

在搜索可执行文件时,如果扩展名不匹配,则查看名称是否与目录名匹配。如果匹配,则 START 命令会在该路径上启动资源管理器。如果从命令行执行,则相当于对该路径执行 CD/D。

是的,这是因为您的文件名与文件夹名称匹配。

相关内容