Windows 中的“which”

Windows 中的“which”

可能重复:
Windows 中与 whereis 等效的是什么?

我习惯在 Unix 系统上说“which foo”来查看要运行什么。

今天我在 Windows 上使用一个程序时遇到了问题,我认为可能是运行了错误的命令。如何从 cmd.exe 确定当我输入“foo”时它实际上要运行哪个程序?

答案1

我建议,使用你的“foo”示例,输入

foo /?

在 Windows 上,这应该与在 Linux 上添加 --help 的效果类似。请注意,并非总是如此,但它应该会让您确切地知道发生了什么,以及一些命令语法。

答案2

我不知道 Windows 的哪个命令,但你可以从命令行运行小路查看它在哪里查找文件。我相信它会按顺序搜索路径并运行找到的第一个可执行文件。

请记住,CMD.EXE 还将在本地目录中搜索要运行的程序,我相信这会优先。

答案3

扩展史蒂夫回答%SYSTEM_ROOT%您可以运行attrib搜索来查看“foo”位于何处,然后与 %PATH% 进行比较以查看哪个将首先执行:

attrib /s foo.exe
...
echo %PATH%

答案4

Cygwin 附带的http://cygwin.org) 将从 cmd.exe 运行,否则可能会执行您想要的操作。请注意,如果您正在寻找 .bat,则需要明确添加 .bat,例如,“which gorp.bat”将找到 gorp.bat,但“which gorp”不会。

相关内容