我知道,在Windows 7下的命令行命令…
tasklist通过它的可执行名称获取当前运行的进程(包括服务) net start显示所有已启动服务的显示名称。 (“漂亮”的显示名称 ,而不是较短的,无空间的服务名称 ) 我想在命令行上实现的是
如果有一个命令(比如说可执行文件(可能包含path),服务名称,显示名称),并且我可以帮我find我需要的代码,那就完美了。
如果单独的svchost-Services规则适用,我缺乏理解。
例如:我目前试图findC:\Windows\System32\wmiserv.exe后面的服务,它locking了一些文件。 谷歌search只有一个search垃圾邮件和狡猾的“下载FixingTool.exe”狂野的一堆。 我所能find的exe的属性对话框(假设它是第一架飞机的benigm)听起来不像我能想出的任何服务名称。
我没有find一个突击队,但能够为你做一个batch file。
将以下代码保存在“GetServide.cmd”文件中,然后从命令行运行它。
要searchwmiservice.exe,语法将如下所示:GetServide.cmd wmiservice.exe
@echo off REM Syntax: GetService.cmd [keyword] REM --- Get Keyword --- Set Keyword=%1 REM --- Get all services --- for /f "tokens=2" %%a in ('sc query^|find /i "SERVICE_NAME"') do Call :DoSearch %%a Goto :EOF REM --- Search Function --- :DoSearch REM --- Set service name, quit if empty --- Set FoundOutput= Set SrvName= Set srv=%1 if "%srv%"=="" goto :eof REM --- Serach keyword in services --- for /f %%a in ('sc qc "%1"^|find /i "%keyword%"') do set FoundOutput=%%a REM --- If keyword found, display info --- if "%FoundOutput%"=="" goto :eof ECHO. ECHO Service: %srv% sc qc "%1"|find /i "BINARY_PATH_NAME" sc qc "%1"|find /i "DISPLAY_NAME"