经常用Ping来检测网络的通断,同样的操作,还可以使用Pathping,但pathping慢一些,好处是可以得到路由信息。
1、连续测试。
ping 1.2.3.4 -t
2、设置测试的包大小和个数。
ping 1.2.3.4 -n 100 -l 4096
3、如果要Ping的地址多了,我们也可以用一个循环来进行。例如:
for /L %I in (1,1,128) do ping 1.2.3.%I
4、可以将这些信息保存到一个文件里,方便查看或者它用。比如:
for /L %i in (1,1,128) do ping 1.2.3.%i | findStr "TTL" >> c:\1.txt
5、ping可以检测网络跳跃节点信息,这个一般人很少用到,如果需要检查网络节点数多时就有用处了。例如
ping 1.2.3.4 -r 9
可以写一个DOS脚本来进行测试网络,以下就是编写一个DOS脚本来循环扫描一个IP地址段(可以自己定义)并将结果存储到指定的文件中,比如:
@echo off
::设置参数
set FilePath=d:\PingResult.txt
mode con:cols=120 lines=50
set StartIP=1
set EndIP=128
set PingIP=%StartIP%
echo %date% %time% 开始扫描......>>%FilePath%
:StartPing
echo ----------1.2.3.%PingIP%---------->> %FilePath%
ping 1.2.3.%PingIP% | findStr "TTL" >> %FilePath%
echo ->> %FilePath%
set /a PingIP = %PingIP% + 1
if %PingIP% geq %EndIP% goto :EndPing
goto :StartPing
:EndPing
echo %date% %time% 结束扫描!>>%FilePath%
写DOS脚本的注意点:
1、不区分大小写,但是命名习惯还是挺重要。
2、上面的FindStr是一个系统程序,也可以换成Find,FindStr比Find功能更强大。
3、获取屏幕输入,可以用:set /p YourChoice=请输入你的选择:
其中,YourChoice是变量名,“请输入你的选择:”是屏幕提示。
后面要使用这个变量,变量名的前后加%,比如:%YourChoice%
4、要运算,可以用:
set /a YourVar=9+2
set /a YourVar=YourVar+2
set /a YourVar=%YourVar%+2
5、也可以使用函数,比如:
@echo off
set "YourVar=1"
echo 没有调用函数之前的值,YourVar: %YourVar%
call :YourFunction YourVar
echo 调用函数之后的值,YourVar: %YourVar%
goto :eof
::函数主体
::------------------
:YourFunction -
set "%~1=2" -
goto :eof -
::------------------
6、如何在DOS下延时?
① 先建立一个VBS脚本文件比如DosSleep.vbs,里面的代码:
WScript.sleep 1000
这里1000为毫秒,可以修改为你想要延时的时间。
② 在DOS脚本中直接调用,比如:
Wscript DosSleep.vbs