本帖最后由 smdx 于 2020-11-7 19:32 编辑
各位高手求一个bat脚本,检测网内192.168.1.10是否在线,不在线执行命令net use * /d /y 然后结束bat; 如果在线运行 net use g: \\192.168.1.10\soft "12345678" /user:123 命令网络驱动器映射然后结束bat。
谢谢
感谢楼下各位帮助,解决了。
做个记录:
检测网内192.168.1.10是否在线,不在线执行命令net use * /d /y 然后结束bat;
检测目标在线运行 net use g: \\192.168.1.10\soft "12345678" /user:123 命令网络驱动器映射然后结束bat。
- @echo off
- ping 192.168.1.10 -n 1 | find "TTL"
- if errorlevel 1 goto Stop
- if errorlevel 0 goto Action
- exit
- :Stop
- net use * /d /y
- exit
- :Action
- net use y: \\192.168.1.10\Video "12345678" /user:123
- net use x: \\192.168.1.10\Music "12345678" /user:123
- net use v: \\192.168.1.10\Soft "12345678" /user:123
- exit
复制代码
用了两天发现这样还是不够完善又找了bat论坛的高手咨询改善了脚本,发上来有需要的可以看一下。
这次的脚本会先检测网络有没有连接上,如果没联网ping30次就退出脚本,联网了进行下一步确认映射目标机器是否在线,在线就映射分区不在线就退出脚本。
- @echo off
- ::检测网络是否连接再进行下一步
- :Ping
- ping 192.168.1.1
- if %errorlevel% equ 0 echo;Ping 192.168.1.1 成功&&goto :Connect
- set /a count+=1
- if %count% gtr 30 goto :Stop
- if %errorlevel% equ 1 goto :Ping
- :Connect
- ping 192.168.1.10 -n 1 | find "TTL"
- if errorlevel 1 goto Stop
- if errorlevel 0 goto Action
- exit
- :Stop
- net use * /d /y
- exit
- :Action
- net use * /d /y
- net use z: \\192.168.1.10\Video "123456" /user:123
- net use y: \\192.168.1.10\Music "123456" /user:123
- net use x: \\192.168.1.10\Driver "123456" /user:123
- net use w: \\192.168.1.10\Soft "123456" /user:123
- exit
复制代码
|