PATH,解析 exe 的位置

PATH,解析 exe 的位置

考虑以下路径

c:\App1\;c:\App2\

App1 目录包含应用程序 Foo.exe
App2 目录包含应用程序 Bar.exe

现在,当我在 CMD 窗口中时,我可以输入 Foo.exe 或 Bar.exe。

现在有没有办法知道,当我输入 Foo.exe 时,它​​会解析为 C:\App1\Foo.exe。

我需要知道,因为我有一个应用程序可以干预该start .命令,我在 Powershell 中广泛使用该命令(在使用 Git 存储库时)。

答案1

您正在寻找where命令。

C:\Users\gronostaj>where grep
C:\MinGW\msys\1.0\bin\grep.exe
C:\FPC\2.6.0\bin\i386-Win32\grep.exe
C:\Program Files (x86)\Git\bin\grep.exe

当您输入其名称时,将执行第一个。

请记住,在 Windows 中当前工作目录始终优先于 PATH。

C:\Program Files (x86)\Git\bin>where grep
C:\Program Files (x86)\Git\bin\grep.exe
C:\MinGW\msys\1.0\bin\grep.exe
C:\FPC\2.6.0\bin\i386-Win32\grep.exe

答案2

假设PATH是环境变量,使用$exeLocation = Get-Command $exename | Select -Expand Path

相关内容