批处理检测局域网电脑是否开机(转载)

我给你两种方案:
1、用ping命令;
2、用net view命令。
用这两个命令结合批处理程序来达到你的目的!
这两个BAT是我以前写的,你可以修改下变成你运用得到的!呵呵!

1、ping方案(手动输入起始IP和结束IP):
 off
title 扫描在线IP
::MODE con: COLS=60 LINES=18
color 0a
::装饰。

:kaishi
cls
for /l %%i in (1,1,4) do echo.
echo                       输入起始IP地址和结束IP地址后回车,扫描完成
echo                   之后会在此程序目录下生成TXT文件,文件内记录了
echo                   在线和不在线的主机。
echo.
set /p qishi= 起始IP:
set /p jieshu= 终止IP:
IF ERRORLEVEL 1 echo 错误的IP地址格式! && pause && goto kaishi
echo.
::从键盘获得两个变量的值。

for /f "tokens=1-4 delims=." %%a in ("%qishi%") do (
if %%a LSS 0 goto error
if %%a GTR 255 goto error
if %%b LSS 0 goto error
if %%b GTR 255 goto error
if %%c LSS 0 goto error
if %%c GTR 255 goto error
if %%d LSS 0 goto error
if %%d GTR 255 goto error
 set v1=%%a
 set v2=%%b
 set v3=%%c
 set v4=%%d
)
::分割起始IP的四个段并赋值,判断IP是否正确。

for /f "tokens=1-4 delims=." %%a in ("%jieshu%") do (
if %%a LSS 0 goto error
if %%a GTR 255 goto error
if %%b LSS 0 goto error
if %%b GTR 255 goto error
if %%c LSS 0 goto error
if %%c GTR 255 goto error
if %%d LSS 0 goto error
if %%d GTR 255 goto error
 set v5=%%a
 set v6=%%b
 set v7=%%c
 set v8=%%d
)
::分割终止IP的四个段并赋值,判断IP是否正确。

IF %V5% LSS %V1% echo 错误:终止IP不能小于起始IP。& pause & goto kaishi
::判断终止IP与起始IP的正确性。

echo 正在扫描...
IF %V4% LEQ %V8% set zengzhi_1=1
IF %V4% GEQ %V8% set zengzhi_1=-1
IF %v3% LEQ %v7% set zengzhi_2=1
IF %V3% GEQ %V7% set zengzhi_2=-1
IF %v2% LEQ %v6% set zengzhi_3=1
IF %v2% GEQ %v6% set zengzhi_3=-1
for /L %%d in (%v1%,1,%v5%) do (
for /L %%c in (%v2%,%zengzhi_3%,%v6%) do (
for /L %%b in (%v3%,%zengzhi_2%,%v7%) do (
for /L %%a in (%v4%,%zengzhi_1%,%v8%) do (
ping /n 1 %%d.%%c.%%b.%%a >nul && echo %%d.%%c.%%b.%%a  开机 && echo %%d.%%c.%%b.%%a>>在线主机.txt || echo %%d.%%c.%%b.%%a  关机 && echo %%d.%%c.%%b.%%a >>不在线主机.txt
)
)
)
)
for /l %%i in (1,1,5) do echo.
echo                                  ☆ 报告 ☆
IF EXIST 在线主机.txt (
FOR /F "tokens=3 delims= " %%c in (‘find /c 在线主机.txt " "‘) do set zx=%%c
) ELSE (
set zx=0
)
IF EXIST 不在线主机.txt (
FOR /F "tokens=3 delims= " %%c in (‘find /c 不在线主机.txt " "‘) do set bzx=%%c
) ELSE (
set bzx=0
)
set /a zgjsj=%zx%+%bzx%
echo %date% %time%>☆报告☆.txt
echo 扫了%zgjsj%台计算机! & echo 扫了%zgjsj%台计算机!>>☆报告☆.txt
echo 有%zx%台计算机在线! & echo 有%zx%台计算机在线!>>☆报告☆.txt
echo 有%bzx%台计算机不在线! & echo 有%bzx%台计算机不在线!>>☆报告☆.txt
echo        10秒后自动退出... & ping 127.1 -n 10 >nul & exit

:error
echo 错误的IP地址!
pause
goto kaishi

2、用net view方案(全自动):
 off
title 共享扫描..ipc讲...
MODE con: COLS=80 LINES=22
color 0a
echo.
echo 工作组内所有计算机:
FOR /F "eol=- delims=\" %%c in (‘net view‘) do (
FOR /F "eol=服" %%i in (‘echo %%c‘) do (
FOR /F "eol=命" %%i in (‘echo %%c‘) do (
echo %%i
echo %%i>>全部在线主机.txt
echo %%i>>pcname.txt
echo %%i >>pcname2.txt
)
)
)
::echo 分析其计算机的IP地址...
::FOR /F "delims=" %%h in (pcname.txt) do 
::FOR /F "tokens=3 delims= " %%j in (‘ping %%h -n 1‘) do echo %%j
::)
echo.
echo 扫描共享文件...
FOR /F "delims=" %%c in (pcname.txt) do (
net view \%%c >nul 2>nul && echo %%c>>有共享.txt && echo %%c  共享文件:>>共享的文件2.txt && echo ==============================================>>共享的文件2.txt && net view \%%c>>共享的文件2.txt && echo       .>>共享的文件2.txt && echo       .>>共享的文件2.txt && echo %%c  有共享||echo %%c  无共享
)
::除去net view命令结果内多余的文字
FOR /F "eol=在 delims=" %%c in (共享的文件2.txt) do (
FOR /F "eol=- delims=" %%i in (‘echo %%c‘) do (
FOR /F "eol=命 delims=" %%c in (‘echo %%i‘) do (
echo %%c>>共享的文件.txt
)
)
)

echo.
echo 扫描能ipc拥募扑慊...
FOR /F "delims=" %%i in (pcname.txt) do (
net use \%%iipc " /user:"" >nul 2>nul && echo %%i>>ipc映晒Φ募扑慊.txt && net use \%%i /del>nul && echo %%i  ipc映晒!||echo %%i  ipc邮О!
)
echo.
echo.
echo.
echo                                  ☆ 报告 ☆
IF EXIST pcname2.txt (
FOR /F "tokens=3 delims= " %%c in (‘find /c pcname2.txt " "‘) do echo 当前工作组内有%%c台计算机!
) ELSE (
echo 当前工作组内有0台计算机!
)
IF EXIST 有共享.txt (
FOR /F "tokens=3 delims= " %%c in (‘find /c 有共享.txt " "‘) do echo 当前工作组内有%%c台计算机有共享文件! & del 有共享.txt
) ELSE (
echo 当前工作组内有0台计算机有共享文件
)
IF EXIST ipc映晒Φ募扑慊.txt (
FOR /F "tokens=3 delims= " %%c in (‘find /c ipc映晒Φ募扑慊.txt " "‘) do echo 当前工作组内有%%c台计算机ipc芰映晒!
) ELSE (
echo 当前工作组内有0台计算机ipc芰映晒!
)
del pcname.txt>nul
del pcname2.txt>nul
del 共享的文件2.txt>nul
echo        10秒后自动退出... & ping 127.1 -n 10 >nul & exit

为你的情况写的代码:
 off
echo 正在扫描...
FOR /F "delims= " %%c in (d:    esthostname.txt) do ping %%c /n 1 >nul && echo %%c 开机! && echo %%c>>d:    est开机主机.txt||echo %%c 关机! && echo %%c>>d:    est关机主机.txt
echo 扫描完毕!
pause

时间: 2024-12-11 18:25:49

批处理检测局域网电脑是否开机(转载)的相关文章

关于电脑无法开机或无法启动的几种可能和解决方案

问题一:显示器无信号,电源灯亮,主板无报错 VGA接口插错,有独显的情况下不用独显接口而用主板上的接口.--直接换接口就行 VGA线或者显示器电源线没接好--尝试更换VGA线或显示器 问题二:电脑无法开机,按开机键电源灯不亮. 1.电源线没插好--不解释 2.电源问题--尝试更换电源 问题三:主板报错,电脑无法启动 尝试听蜂鸣器声音判断出错位置. 1.硬件错误--按下面的错误进行排查: (转载自http://www.bios.net.cn/e/DoPrint/?classid=34&id=650

检测局域网中未使用的IP地址

临时检测局域网中未使用的IP地址 #!/bin/bash echo "检测局域网中未使用的IP地址2015" echo ""     processbar() {         local current=$1; local total=$2;         local maxlen=80; local barlen=66; local perclen=14;         local format="%-${barlen}s%$((maxlen-b

局域网电脑外部访问

对于一个码农而言,一个可以稳定存储代码的服务器是很有必要的.不管是打开家里的机器.笔记本.实验室的机器,需要做的第一件事就是更新到更新的代码:而一个功能点完成后,也需要把代码提交到服务器. 以前一直用实验室的电脑当我自己的服务器,不过自从实验室遭了一次黑客攻击,为了数据安全,实验室的网络就被整成了一个纯内网.只想说,真是坑爹啊! 后来就把家里的电脑整成了服务器,不过因为家里是一个局域网,在外面又访问不了:要配置成让外网可以访问,又怕麻烦. 直到今天发现原来这也不是一件很难的事.在路由器里,有一个

局域网电脑共享无法访问解决方案

局域网电脑共享无法访问解决方案: 默认情况下,Windows XP的本地安全设置要求进行网络访问的用户全部采用来宾方式. 同时,在Windows XP安全策略的用户权利指派中又禁止Guest用户通过网络访问系统.这样两条相互矛盾的安全策略导致了网内其他用户无法通过网络访问使用Windows XP的计算机.你可采用以下方法解决. 1,服务"server",属性启动类型-"自动"-确定,然后在左边点"启动",确定. 2,查看工作组计算机拒绝访问的原因

最近更新完电脑管家开机速度一下慢了好多有木有?$电脑管家-清理垃圾$.qmgc

最近更新完电脑管家开机速度一下慢了好多有木有? 以前开机速度是几十秒,自从前几天更新了电脑管家之后,开机时间一下就变成了一分几十秒! 桌面上还多了一个清理垃圾的图标! 右键菜单也看不到属性 需要到以下位置查看: $电脑管家-清理垃圾$.qmgc

不同电脑的开机启动项

不同电脑的开机启动项  

怎么查看Mac电脑的开机记录?

可以使用last命令查看Mac电脑来看开机记录,同时也能查看关机记录. 首先打开mac的命令终端: 命令行终端敲入命令:last | grep reboot (查看开机时间记录) 命令行终端敲入命令:last | grep shutdown (查看关机时间记录) 我们经常说,饭可以乱吃,话不能乱说.  耳听为虚,眼见为实.而事实是耳听不一定为虚,眼见业也并非为实.  这世界没有感同身受,针刺不到你身上,你永远不知道有多疼.  你不是别人,你不知道她有怎样的故事.  你可以不理解不喜欢不赞同,但请

电脑自动开机设置教程

对于很多办公人士来说,每天上班第一件事就是打开电脑,每天都要做这重复的事情,是不是感觉非常烦呢,今天笔者就告诉你:怎么设置电脑自动开机.设置电脑自动开机,不同的主板有不同的设置方法,但大同小异. 工具/原料 华硕主板 方法/步骤 首先,在电脑刚开机的时候点击键盘上的“Delete”键,进入BIOS主板设置,如图所示   由于在BIOS主板设置中,鼠标不能用,主要利用键盘来选择操作,除了要用+,-,esc,F10几个键外,还用到下图几个键,如图所示   选择“power”选项,如图所示   选择“

树莓派实现远程开机局域网电脑(WOL协议+etherwake+华硕主板Z97)

一.花生壳映射树莓派 参考: http://www.cnblogs.com/EasonJim/p/6100181.html http://www.cnblogs.com/EasonJim/p/6100199.html 二.系统设置网卡可以唤醒 三.配置BIOS 进入BIOS 四.用PuTTY登录树莓派 下载etherwake sudo apt-get install etherwake 使用命令唤醒: sudo etherwake 12:32:E4:12:55:12 注意:上面为MAC地址 参考