首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >psloggedon超时

问psloggedon超时
EN

Server Fault用户
提问于 2010-11-18 11:36:42
回答 3查看 1.2K关注 0票数 1

我从我的网络中有一个机器名称列表,我把它放在一个批处理文件中,在列表中运行,并向我展示谁被登录到每个列表中。

代码语言:javascript
复制
psloggedon \\machineA
psloggedon \\machineB
psloggedon \\machineC
psloggedon \\machineD
psloggedon \\machineE
psloggedon \\machineF
...

当它碰到一台实际上不在网络上的机器时,它在进入下一台机器之前挂起30到60秒……我只是想知道是否有办法加快速度,这样如果它碰到了不在网络上的机器,它就会更快地移动到列表中的下一台机器上。

我在其他地方读到,通过在命令中添加ping -n循环,这是可能的.但是怎么做呢?

EN

回答 3

Server Fault用户

发布于 2010-11-18 16:30:34

在您的情况下,使用ping命令是正确的。

Start.cmd

代码语言:javascript
复制
FOR /F %%x in (c:\temp\pclist.txt) do call ping_psloggedon.cmd %%x

ping_psloggedon.cmd

代码语言:javascript
复制
ping -n 1 -i 200 -w 130 %1
if errorlevel 1 goto exit
c:\temp\pstools\psloggedon.exe \\%1
:exit

pclist.txt

代码语言:javascript
复制
PCNAME1
PCNAME2
PCNAME3
票数 1
EN

Server Fault用户

发布于 2010-11-19 10:15:54

只需将>> c:\output添加到c:\temp\pstools\psloggedon.exe \%1

代码语言:javascript
复制
ping -n 1 -i 200 -w 130 %1
if errorlevel 1 goto exit
c:\temp\pstools\psloggedon.exe \\%1 >> C:\output.txt
:exit

现在,每次启动start.cmd时,结果都会添加到c:\output.txt中

如果您想要,您可以添加回显LoggedonUsers > c:\output.txt到start.cmd中,以便在开始时获得一个干净的output.txt。

代码语言:javascript
复制
echo LoggedonUsers > c:\output.txt
FOR /F %%x in (c:\temp\pclist.txt) do call ping_psloggedon.cmd %%x

你说“这也是ERRORLEVEL声明”是什么意思?

票数 0
EN

Server Fault用户

发布于 2010-11-19 11:47:33

再次感谢,伙计:)

这也很管用!是否可以只输出机器名称的值?与我目前在输出文件中得到的所有其他文本相反。

所以目前在output.txt中它显示的是.

连接到to 013131的注册表..。

本地登录用户: 19/11/2010 09:08:05域名\userid用户通过资源共享登录: 19/11/2010 11:44:17域名\userid

不管怎么说,这样它就可以在列表中运行并输出LT013131了吗?

因此,一旦脚本完成,我将只需要一个机器名称的列表。

谢谢:)

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/203366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档