Reboot DIY
(2008-11-10 19:21:08)
标签:
reboottimes杂谈 |
分类: 技术分享 |
1.清楚administrator 用户的密码,确保计算机能自动登陆。
2.将这个批处理文件加入到注册表run子键中。确保每次开机运行。
3.记录需要重启次数times和已经重启次数count到文件或者注册表。
4.用shutdown命令重启计算机。
5.每次重启后,已经重启次数count加1。
6.当已经重启次数等于需要重启次数时,停止重启。
1.清楚administrator 用户的密码,确保计算机能自动登陆。
2.将这个批处理文件加入到注册表run子键中。确保每次开机运行。
3.记录需要重启次数times和已经重启次数count到文件或者注册表。
4.输入一个两次重启的间隔时间的参数interval,并传给shutdown。
5.再用shutdown命令重启计算机
6.每次重启后,已经重启次数count加1。
7.当已经重启次数count等于需要重启次数times时,停止重启。
1.清楚administrator 用户的密码,确保计算机能自动登陆。
2.将这个批处理文件加入到注册表run子键中。确保每次开机运行。
3.记录需要重启次数times和已经重启次数count到文件或者注册表。
4.输入一个两次重启的间隔时间的参数interval,并传给shutdown。
5.通过ver判断操作系统。Vista和XP分别处理。
6.再用shutdown命令重启计算机
7.每次重启后,已经重启次数count加1。
8.当已经重启次数count等于需要重启次数times时,停止重启。
===========================================cut
here===============================
@ECHO OFF
IF "%1"=="" GOTO USAGE
IF "%2"=="" GOTO USAGE
SET count=0
Net user administrator ""
REM "这里需将administrator的密码清空。主要为了使计算机重启后不用输入密码就能登陆。"
REG add HKLM\software\Microsoft\Windows\CurrentVersion\Run /v
reboot /t REG_SZ /d "c:\reboot.bat" /f
REM "添加注册表键值reboot到run下,确保每次重启后能执行reboot.bat"
REG add HKLM\Software\reboot /v times /t REG_SZ /d "%1" /f
REM "time用来保存总共需要reboot的次数。"
REG add HKLM\Software\reboot /v count /t REG_SZ /d "0" /f
REM "count用来保存已经reboot的次数。"
REG add HKLM\Software\reboot /v interval /t REG_SZ /d %2
/f
REM "interval用来保存两次重启间隔时间"
For /F "skip=1 tokens=3" %%i IN ('ver') Do SET version=%i
IF "%version%"=="XP" GOTO XP
GOTO Vista
REM "通过ver判断操作系统。”
:XP
ECHO @ECHO OFF
ECHO :START >> c:\reboot.bat
ECHO For /F "skip=3 tokens=3" %%%%i IN ('reg query
"HKLM\Software\reboot" /v count') Do SET count=%%%%i%%
>> c:\reboot.bat
ECHO For /F "skip=3 tokens=3" %%%%i IN ('reg query
"HKLM\Software\reboot" /v times') Do SET times=%%%%i%%
>> c:\reboot.bat
ECHO For /F "skip=3 tokens=3" %%%%i IN ('reg query
"HKLM\Software\reboot" /v interval') Do SET interval=%%%%i%%
>> c:\reboot.bat
ECHO IF "%%count%%"=="%%times%%" GOTO END
>> c:\reboot.bat
ECHO SET /a count=%%count%%+1 >>
c:\reboot.bat
ECHO REG add HKLM\software\reboot /v count /t REG_SZ /d %%count%%
/f >> c:\reboot.bat
ECHO ECHO %%count%% >>
c:\reboot.bat
ECHO shutdown -r -t %%interval%% -f -c "Count:%%count%% times.
Totally:%%times%% times.">>
c:\reboot.bat
ECHO EXIT >> C:\reboot.bat
ECHO :END >> c:\reboot.bat
ECHO SET count=0
ECHO REG DELETE HKLM\software\reboot /v count /f
>> c:\reboot.bat
ECHO REG DELETE HKLM\software\reboot /v times /f
>> c:\reboot.bat
ECHO REG DELETE HKLM\software\reboot /v interval /f
>> c:\reboot.bat
ECHO REG DELETE HKLM\software\Microsoft\Windows\CurrentVersion\Run
/v reboot /f >> c:\reboot.bat
ECHO ECHO END >> c:\reboot.bat
ECHO DEL c:\reboot.bat >>
c:\reboot.bat
REM "如果为XP,以上脚本会在c:\下产生一个reboot.bat文件用来控制reboot。"
:Vista
ECHO @ECHO OFF
ECHO :START >> c:\reboot.bat
ECHO For /F "skip=2 tokens=3" %%%%i IN ('reg query
"HKLM\Software\reboot" /v count') Do SET count=%%%%i%%
>> c:\reboot.bat
ECHO For /F "skip=2 tokens=3" %%%%i IN ('reg query
"HKLM\Software\reboot" /v times') Do SET times=%%%%i%%
>> c:\reboot.bat
ECHO For /F "skip=2 tokens=3" %%%%i IN ('reg query
"HKLM\Software\reboot" /v interval') Do SET interval=%%%%i%%
>> c:\reboot.bat
ECHO IF "%%count%%"=="%%times%%" GOTO END
>> c:\reboot.bat
ECHO SET /a count=%%count%%+1 >>
c:\reboot.bat
ECHO REG add HKLM\software\reboot /v count /t REG_SZ /d %%count%%
/f >> c:\reboot.bat
ECHO ECHO %%count%% >>
c:\reboot.bat
ECHO shutdown -r -t %%interval%% -f -c "Count:%%count%% times.
Totally:%%times%% times.">>
c:\reboot.bat
ECHO EXIT >> C:\reboot.bat
ECHO :END >> c:\reboot.bat
ECHO SET count=0
ECHO REG DELETE HKLM\software\reboot /v count /f
>> c:\reboot.bat
ECHO REG DELETE HKLM\software\reboot /v times /f
>> c:\reboot.bat
ECHO REG DELETE HKLM\software\reboot /v interval /f
>> c:\reboot.bat
ECHO REG DELETE HKLM\software\Microsoft\Windows\CurrentVersion\Run
/v reboot /f >> c:\reboot.bat
ECHO ECHO END >> c:\reboot.bat
ECHO DEL c:\reboot.bat >>
c:\reboot.bat
REM "如果为Vista, 以上脚本会在c:\下产生一个reboot.bat文件用来控制reboot。"
C:\reboot.bat
GOTO END
:USAGE
ECHO ********************************
ECHO *
ECHO *
ECHO *
ECHO ********************************
ECHO *Usage: %0 n
t
ECHO *
ECHO *
ECHO *Example: %0 3 10
ECHO ********************************
:END
=============================cut
here=============================
声明:本文属趋势科技中国研发中心同事原创,转载请附上本文原始出处链接和作者信息(趋势科技中国研发中心)。谢谢!