当我执行与内部命令同名的命令时,Windows 不会在路径中搜索,而是使用在 CMD.EXE 中找到的路径。
例如,MKDIR是内置于CMD.EXE
. 它不支持与 Unix 版本相同的选项(例如-p
和--help
)。如果我使用这些选项,Windows 将简单地创建名为-p或--help 的文件,即使我在路径中的目录中安装了 GNU 版本的mkdir。
当使用某些通过终端使用mkdir 的程序时,这会成为一个问题。例如,prose 的 gulpfile包含三个mkdir -p
命令,-p
在工作目录中创建一个文件夹,然后抛出错误。我必须手动编辑 gulpfile 以便它使用已安装的mkdir.exe,这使我更难跨平台共享我的 fork。
如何强制 Windows shell 使用mkdir.exe
在 PATH 中找到的而不是 CMD.EXE?