发表于 2011-4-9 11:181#
楼主Windows 7中的服务很多是无用的,有的开着不仅消耗资源,而且还会产生安全问题。因此,很多用户都会使用优化软件将一些无用服务关闭,但是有些用户对系统不熟悉,有的服务关闭后系统产生了问题,可是想恢复却不知到底是哪个服务的问题。我们为何不在关闭服务前,将系统的服务状态做一个备份,万一真出现问题随时还原服务呢。
首先,我们启动记事本,将批处理命令写入记事本后,保存为saveservice.cmd
TITLE Windows 7服务备份工具
@echo off
@echo ========================================================================
@echo Windows 7服务备份工具 (C) 2011
@echo ========================================================================
@echo.
@echo 该工具能够自动备份Windows 7的服务状态,以方便日后进行还原!
@echo.
pause
REM 获取当前日期和时间
for /f "tokens=1, 2, 3, 4 delims=-/. " %%j in ('Date /T') do set FILENAME=恢复服务_%%j_%%k_%%l_%%m
for /f "tokens=1, 2 delims=: " %%j in ('TIME /T') do set FILENAME=%FILENAME%_%%j_%%k.cmd
REM 获取所有服务名称
sc query type= service state= all| findstr /r /C:"SERVICE_NAME:" >tmpsrv.txt
echo 正在保存服务状态至 %FILENAME% 文件,请稍候……
REM 将当前服务状态保存至批处理文件
echo @echo 服务状态保存于%TIME% %DATE% >"%FILENAME%"
echo @pause >>"%FILENAME%"
for /f "tokens=2 delims=:" %%j in (tmpsrv.txt) do @( sc qc %%j |findstr START_TYPE >tmpstype.txt && for /f "tokens=4 delims=:_ " %%s in (tmpstype.txt) do @echo sc config %%j start= %%s >>"%FILENAME%")
echo @pause >>"%FILENAME%"
del tmpsrv.txt
del tmpstype.txt
echo 服务状态已经保存至%FILENAME%文件中了,您可以随时运行它来恢复服务。
pause
之后,我们运行它,会提示“该工具能够自动备份Windows 7的服务状态,以方便日后进行还原!”,按任意键继续,按下任意键将会提示“正在保存服务状态至恢复服务.cmd文件,请稍候……”完成后会提示我们“服务状态已经保存至恢复服务.cmd文件中了,您可以随时运行它来恢复服务。”,按任意键即退出。同时,会生成一个恢复服务.cmd文件,双击它,可以看到@echo 服务状态保存的注释信息。
首先,我们启动记事本,将批处理命令写入记事本后,保存为saveservice.cmd
TITLE Windows 7服务备份工具
@echo off
@echo ========================================================================
@echo Windows 7服务备份工具 (C) 2011
@echo ========================================================================
@echo.
@echo 该工具能够自动备份Windows 7的服务状态,以方便日后进行还原!
@echo.
pause
REM 获取当前日期和时间
for /f "tokens=1, 2, 3, 4 delims=-/. " %%j in ('Date /T') do set FILENAME=恢复服务_%%j_%%k_%%l_%%m
for /f "tokens=1, 2 delims=: " %%j in ('TIME /T') do set FILENAME=%FILENAME%_%%j_%%k.cmd
REM 获取所有服务名称
sc query type= service state= all| findstr /r /C:"SERVICE_NAME:" >tmpsrv.txt
echo 正在保存服务状态至 %FILENAME% 文件,请稍候……
REM 将当前服务状态保存至批处理文件
echo @echo 服务状态保存于%TIME% %DATE% >"%FILENAME%"
echo @pause >>"%FILENAME%"
for /f "tokens=2 delims=:" %%j in (tmpsrv.txt) do @( sc qc %%j |findstr START_TYPE >tmpstype.txt && for /f "tokens=4 delims=:_ " %%s in (tmpstype.txt) do @echo sc config %%j start= %%s >>"%FILENAME%")
echo @pause >>"%FILENAME%"
del tmpsrv.txt
del tmpstype.txt
echo 服务状态已经保存至%FILENAME%文件中了,您可以随时运行它来恢复服务。
pause
之后,我们运行它,会提示“该工具能够自动备份Windows 7的服务状态,以方便日后进行还原!”,按任意键继续,按下任意键将会提示“正在保存服务状态至恢复服务.cmd文件,请稍候……”完成后会提示我们“服务状态已经保存至恢复服务.cmd文件中了,您可以随时运行它来恢复服务。”,按任意键即退出。同时,会生成一个恢复服务.cmd文件,双击它,可以看到@echo 服务状态保存的注释信息。
UID 79543

