"今天遇到这个需求了,因为有部分电脑网络偶尔出现问题,又不好排查,所以搞了一个这个脚本,感谢各位前辈,善加改进已经可用。 效果如下哦: [图片] 添加一个脚本 vbs。 Dim args, flag, unsuccOut args='' otherout='' flag=0 If WScript.Arguments.co .."

windows 系统 ping 加上时间戳并且 cmd 隐藏运行实现方法

今天遇到这个需求了,因为有部分电脑网络偶尔出现问题,又不好排查,所以搞了一个这个脚本,感谢各位前辈,善加改进已经可用。
效果如下哦:

添加一个脚本 vbs。

Dim args, flag, unsuccOut

args=""
otherout=""
flag=0

If WScript.Arguments.count = 0 Then
WScript.Echo "Usage: cscript tping.vbs [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]"
WScript.Echo "[-s count] [[-j host-list] | [-k host-list]]"
WScript.Echo "[-r count] [-w timeout] destination-list"
wscript.quit
End if

For i=0 to WScript.Arguments.count - 1
args=args & " " & WScript.Arguments(i)
Next

Set shell = WScript.CreateObject("WScript.Shell")
Set re=New RegExp
re.Pattern="^Reply|^Request|^ 来自 |^ 请求"

Set myping=shell.Exec("ping" & args)

while Not myping.StdOut.AtEndOfStream
   strLine=myping.StdOut.ReadLine()
'WScript.Echo" 原数据 " & chr(9) & strLine
   r=re.Test(strLine)
   If r Then
WScript.Echo date & " "& time & chr(9) & strLine
flag=1
   Else
unsuccOut=unsuccOut & strLine
   End if
Wend

if flag = 0 then
WScript.Echo unsuccOut
end if

可复制到文本改成 vbs 后缀即可。使用方法:把脚本放到指定盘符或者目录。使用如下命令:

cscript D:\ping1.vbs www.baidu.com -t >> D:\baidu.txt

然后找到对应文件即可,是一个排查网络稳定性的好方法。

隐藏窗口实现(bat 脚本文件):

@echo off

if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0""h",0)(window.close)&&exit
:begin
REM
cscript D:\ping.vbs api-teacher.limiketang.com -t >> D:\api-teacher.txt
cscript D:\ping.vbs www.baidu.com -t >> D:\baidu.txt

运行这个脚本即可实现没有 cmd 窗口后台运行,亲测。如有需求可添加启动项或者计划任务里面搞一下,这样不用手动去触发,试试监控输出日志信息。

感谢    关注    收藏    赞同    反对    举报    分享
回帖    
请输入回帖内容...