1. 精确延时
工具 sleep.exe 来自微软Win 2003 Resource Kit Tools
2.倒计时
@echo off
setlocal enabledelayedexpansion&title
set 退格=
for /l %%i in (5,-1,1) do (
sleep 1
set/p"=z 等待%%i秒"<nul
set /p=%退格%<nul
)
因为批处理还有特殊字符退格,如果直接复制代码不能使用请下载附件。
倒计时这个批处理,解决了set/p= 在win7下忽略空格的问题。解决思路
http://hi.baidu.com/lalafengche/blog/item/127b7389ca0190a90e244445.html
3.判断服务是否启动
@echo off
for /f "tokens=4" %%i in ('sc query esri_sde^|findstr /i "state.*:"') do (
if /i "%%i"=="stopped" (
echo esri_sde 已经停止,5秒内启动;保持状态请直接关闭
E:\MINE\工具文档\知识积累\DOS和批处理\倒计时.bat
NET START esri_sde
) else (
echo esri_sde 已经启动,5秒内停止;保持状态请直接关闭
E:\MINE\工具文档\知识积累\DOS和批处理\倒计时.bat
NET stop esri_sde
)
)
pause
4.判断进程是否存在
@echo off
tasklist|find /i "cmd.exe">nul
if ERRORLEVEL 1 (
start cmd.exe
) else ( echo 之前已经启动cmd
sleep 3)
附件是sleep.exe和批处理 倒计时.bat的源代码。