无忧启动论坛

标题: 检测网内目标是否在线执行不同命令求助(已解决) [打印本页]

作者: smdx    时间: 2020-11-5 10:39
标题: 检测网内目标是否在线执行不同命令求助(已解决)
本帖最后由 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。
  1. @echo off
  2. ping 192.168.1.10 -n 1 | find "TTL"
  3. if errorlevel 1 goto Stop
  4. if errorlevel 0 goto Action
  5. exit

  6. :Stop
  7. net use * /d /y
  8. exit

  9. :Action
  10. net use y: \\192.168.1.10\Video "12345678" /user:123
  11. net use x: \\192.168.1.10\Music "12345678" /user:123
  12. net use v: \\192.168.1.10\Soft "12345678" /user:123
  13. exit
复制代码

用了两天发现这样还是不够完善又找了bat论坛的高手咨询改善了脚本,发上来有需要的可以看一下。

这次的脚本会先检测网络有没有连接上,如果没联网ping30次就退出脚本,联网了进行下一步确认映射目标机器是否在线,在线就映射分区不在线就退出脚本。
  1. @echo off
  2. ::检测网络是否连接再进行下一步
  3. :Ping
  4. ping 192.168.1.1
  5. if %errorlevel% equ 0 echo;Ping 192.168.1.1 成功&&goto :Connect
  6. set /a count+=1
  7. if %count% gtr 30 goto :Stop
  8. if %errorlevel% equ 1 goto :Ping

  9. :Connect
  10. ping 192.168.1.10 -n 1 | find "TTL"
  11. if errorlevel 1 goto Stop
  12. if errorlevel 0 goto Action
  13. exit

  14. :Stop
  15. net use * /d /y
  16. exit

  17. :Action
  18. net use * /d /y
  19. net use z: \\192.168.1.10\Video "123456" /user:123
  20. net use y: \\192.168.1.10\Music "123456" /user:123
  21. net use x: \\192.168.1.10\Driver "123456" /user:123
  22. net use w: \\192.168.1.10\Soft "123456" /user:123
  23. exit
复制代码



作者: 江南一根葱    时间: 2020-11-5 10:59
这种最基础的,右键搜索都能出来吧,
ping  192.168.1.10
if errorlevel 1 exit
if errorlevel 0 net use g: \\192.168.1.10\soft  "12345678" /user:123
作者: smdx    时间: 2020-11-5 11:15
本帖最后由 smdx 于 2020-11-5 11:19 编辑
江南一根葱 发表于 2020-11-5 10:59
这种最基础的,右键搜索都能出来吧,
ping  192.168.1.10
if errorlevel 1 exit

搜了一早上找不到....可能关键词没搜对。非常感谢不过运行bat测试这个命令不成功


作者: 489432757    时间: 2020-11-5 11:16
smdx 发表于 2020-11-5 11:15
搜了一早上找不到....可能关键词没搜对。非常感谢不过测试这个命令不成功

真是醉了,要用批处理啊!
你直接输命令肯定不行啊
作者: smdx    时间: 2020-11-5 11:18
这个就是双击运行bat啊
作者: hullokaty    时间: 2020-11-5 11:31
安卓/iOS BB发车轻量版app下载 最懂你的老司机bit.ly/3opxhVI
作者: 永远的大象    时间: 2020-11-5 12:39
试试这段:
  1. @echo off
  2. ping 192.168.1.10 -n 1 | find "TTL"
  3. if errorlevel 1 exit
  4. if errorlevel 0 net use g: \\192.168.1.10\soft  "12345678" /user:123
复制代码

作者: 江南一根葱    时间: 2020-11-5 13:08
smdx 发表于 2020-11-5 11:15
搜了一早上找不到....可能关键词没搜对。非常感谢不过运行bat测试这个命令不成功

这种关键词一般是

“ping不通就运行”
作者: smdx    时间: 2020-11-5 13:13
永远的大象 发表于 2020-11-5 12:39
试试这段:

感谢,成功了。
作者: smdx    时间: 2020-11-5 13:17
江南一根葱 发表于 2020-11-5 13:08
这种关键词一般是

“ping不通就运行”

明白了,谢谢
作者: liu_zhenfeng    时间: 2020-11-5 13:22
@echo off
:LanIf
ping 1.1.1.10&&goto LanOK
start 2.cmd
exit

:LanOK
ping -n 60 127.1>nul
goto LanIf

可以把ping -n 60 127.1>nul替换成 timeout /t 60

1.zip

477 Bytes, 下载次数: 2, 下载积分: 无忧币 -2


作者: smdx    时间: 2020-11-5 14:04
liu_zhenfeng 发表于 2020-11-5 13:22
@echo off
:LanIf
ping 1.1.1.10&&goto LanOK

谢谢




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3