0

我正在尝试检查我的 XenApp 服务器上 spoolsv.exe 进程的状态。我已经将命令从我的 XP 工作站单独运行,但似乎无法让它遍历文本文件。这是我到目前为止所拥有的,是什么让这个在我的 CMD 屏幕上填充服务器 X-XX?

@echo off

FOR /F "usebackq" %%G IN ("C:\Documents and Settings\userid\Desktop\Scripts\servers.txt") DO echo tasklist /S %%G /u domain\userid | find "spoolsv.exe"

pause

我似乎无法让它正确运行,有时它只会在记事本中弹出我的 servers.txt 文件,甚至不运行。我错过了什么?

4

1 回答 1

1

如您所见,任务列表永远不会运行。“do echo tasklist...”片段意味着文字字符串“tasklist /S server-one...”正在被回显到标准输出。由于这些文字字符串都不包含“spoolsv.exe”,因此“find”命令不会匹配任何内容。

请尝试以下操作:

@echo off

FOR /F "usebackq" %%G IN ("C:\Documents and Settings\userid\Desktop\Scripts\servers.txt") DO call :RunTasklistForOneServer %%G

pause
goto :EOF

:RunTasklistForOneServer

set ServerName=%1
echo Calling server %ServerName%
tasklist /S %ServerName% /u domain\userid | find "spoolsv.exe"
于 2012-02-20T19:15:15.497 回答