无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 4014|回复: 11

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

[复制链接]
发表于 2020-11-5 10:39:18 | 显示全部楼层 |阅读模式
本帖最后由 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:39 | 显示全部楼层
这种最基础的,右键搜索都能出来吧,
ping  192.168.1.10
if errorlevel 1 exit
if errorlevel 0 net use g: \\192.168.1.10\soft  "12345678" /user:123

点评

搜了一早上找不到....可能关键词没搜对。非常感谢不过测试这个命令不成功 [attachimg]467930[/attachimg]  详情 回复 发表于 2020-11-5 11:15
回复

使用道具 举报

 楼主| 发表于 2020-11-5 11:15:11 | 显示全部楼层
本帖最后由 smdx 于 2020-11-5 11:19 编辑
江南一根葱 发表于 2020-11-5 10:59
这种最基础的,右键搜索都能出来吧,
ping  192.168.1.10
if errorlevel 1 exit

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

点评

这种关键词一般是 “ping不通就运行”  详情 回复 发表于 2020-11-5 13:08
真是醉了,要用批处理啊! 你直接输命令肯定不行啊  详情 回复 发表于 2020-11-5 11:16
回复

使用道具 举报

发表于 2020-11-5 11:16:30 | 显示全部楼层
smdx 发表于 2020-11-5 11:15
搜了一早上找不到....可能关键词没搜对。非常感谢不过测试这个命令不成功

真是醉了,要用批处理啊!
你直接输命令肯定不行啊
回复

使用道具 举报

 楼主| 发表于 2020-11-5 11:18:22 | 显示全部楼层
这个就是双击运行bat啊
回复

使用道具 举报

发表于 2020-11-5 11:31:00 | 显示全部楼层
安卓/iOS BB发车轻量版app下载 最懂你的老司机bit.ly/3opxhVI
回复

使用道具 举报

发表于 2020-11-5 12:39:47 | 显示全部楼层
试试这段:
  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:13
回复

使用道具 举报

发表于 2020-11-5 13:08:22 | 显示全部楼层
smdx 发表于 2020-11-5 11:15
搜了一早上找不到....可能关键词没搜对。非常感谢不过运行bat测试这个命令不成功

这种关键词一般是

“ping不通就运行”

点评

明白了,谢谢  详情 回复 发表于 2020-11-5 13:17
回复

使用道具 举报

 楼主| 发表于 2020-11-5 13:13:23 | 显示全部楼层

感谢,成功了。
回复

使用道具 举报

 楼主| 发表于 2020-11-5 13:17:46 | 显示全部楼层
江南一根葱 发表于 2020-11-5 13:08
这种关键词一般是

“ping不通就运行”

明白了,谢谢
回复

使用道具 举报

发表于 2020-11-5 13:22:56 | 显示全部楼层
@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

点评

谢谢  详情 回复 发表于 2020-11-5 14:04
回复

使用道具 举报

 楼主| 发表于 2020-11-5 14:04:08 | 显示全部楼层
liu_zhenfeng 发表于 2020-11-5 13:22
@echo off
:LanIf
ping 1.1.1.10&&goto LanOK

谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 17:46

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表