2011-03-03 86 views
0

比如我在命令行(又名CMD.EXE)如何检查应用程序运行的路径?

现在我想知道哪些netsh.exe中正在运行进入

netsh.exe中

,让说我有我的路径上多个netsh.exe(我知道PATH中的第一个将运行,但可以说我有一个非常大路径,我没有时间搜索它手动。公平它并不总是你的你正在使用的机器和多次PATH是由管理员设置的和很多时候,他们不是最好的)。

有什么办法可以在窗口中从命令行中找到它?我想写一个BATCH应用程序正在使用它。

回答

1

我会使用Windows管理规范(WMI)查询:

"SELECT ExecutablePath FROM Win32_Process WHERE Name = 'netsh.exe'" 

http://www.activexperts.com/activmonitor/windowsmanagement/wmi/samples/ WMI样品

您需要找到适合你的脚本的东西

+0

的是,建立在Windows? XP呢? – IAdapter 2011-03-03 08:46:36

+0

这是肯定的。即使win2k有它。测试它开始 - >运行“wbemtest.exe”连接 - >“root \ cimv2” - >连接 - >查询 - ><输入你的查询>(查询语言类似于SQL) - >申请 – Lixas 2011-03-03 08:52:11

1

在Windows Server上(至少2003和2008,不知道2000)哟你可以使用where.exe

Where.exe /?
描述:
显示与搜索模式匹配的文件的位置。
默认情况下,搜索沿着当前目录和
在由PATH环境变量指定的路径中完成。
...

列出的第一个文件也是Windows将使用的第一个文件。
我在我的XP工作站上使用了一个副本,它也能正常工作。

5

它是一个班轮批处理文件:

@for %%e in (%PATHEXT%) do @for %%i in (%1%%e) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i 

保存为whereis.cmd,然后键入

whereis netsh 
相关问题