**:
舉個例子,我們要延時5秒開啟gdh.txt這個檔案,可以用以下幾個方法
@ping 127.0.0.1 -n 6 >nul
start gdh.txt
方法二:vbs start /wait
del /f /s /q sleep.vbs
del /f /s /q sleep.vbs
choice /t 5 /d y /n >nul
start gdh.txt
批處理延時方法小結:
誤差評定: 較高
優點: **構造簡單
缺點: 記憶體占用高,延遲時間長的話誤差相對較大。
@echo off
:loop
echo %time%
ping 1 -n 1 -w 1000 2>nul 1>nul
echo %time%
goto loop
記憶體使用: cmd.exe 1700k
ping.exe 2912k
誤差評定: 一般
優點: **構造簡單,時間越長誤差越小,精確度較高(50ms)
缺點: 記憶體占用高
@echo off
:loop
echo %time%
call :delay 1000
echo %time%
goto loop
:delay
set /a num=num + 1
if %num% geq %1 (set num=) && goto :eof
rem for /l %%i in (1,1,%1) do echo. >nul
goto :eof
記憶體使用: cmd.exe 1744k [for語句方案]
cmd.exe 1740k [set+goto方案]
誤差評定: 很高 (受cpu頻率影響非常大,幾乎無法準確把握全域性延遲時間)
優點: 精確度較高
缺點: 不適合需精確把握時間的場合
@echo off
:loop
echo %time%
msg %username% /time:20 /w "正在延時,點確定可以取消延時!"
echo %time%
goto loop記憶體使用: cmd.exe 1752k
msg.exe 2620k
誤差評定: 低
優點: 比較穩定,可中途取消延時,**構造簡單
缺點: 記憶體占用非常大,有視窗彈出(優點?缺點?)
@echo off
echo wscript.sleep wscript.arguments(0) >%tmp%/delay.vbs
:loop
echo %time%
cscript //b //nologo %tmp%/delay.vbs 2000
echo %time%
goto loop
記憶體使用: cscript.exe 4812k
cmd.exe 1708k
誤差評定: 很低
優點: 精確度最高,使用更靈活,方便
缺點: 產生臨時檔案,記憶體占用多
乙個取代choice命令的批處理 (精典)
@echo off && setlocal && cls
:tou
chcp 437 >nul
graftabl 936 >nul
set /p=請選擇 [ 回車鍵 --- 執行a 其它鍵 --- 執行b ]:nul
echo.&echo.&echo.
if [%errorlevel%]==[13] ( goto :a ) else ( goto :b )
:a::按回車符到這裡執行
echo 這裡是標籤: a
echo.
goto :end
:b::按其它鍵到這裡執行
echo 這裡是標籤: b
echo.
goto :end
:end
:: 用於測試鍵值的**段
:: 如果希望代替choice外部命令,則這個**段可以測試出不同的鍵值交由%errorlevel%判斷
echo 所輸入的ascii碼鍵值: %errorlevel%
echo.&echo.&echo.&echo.&echo.&pause
clsgoto tou
exit
實時顯示當前時間
ping -n 2 127.1>nul&cls&%0
::第二行**說明:「:」和「~」必不可少!「~」後的數字:為正數表示捨棄輸出結果的前幾位;直接跟負數表示取到輸出結果的後第幾位。逗號後的數字: 為正數表示取到輸出結果的前第幾位;為負數表示捨棄輸出結果的後幾位。echo %date:~4% echo %time:~-3% echo %date:~4% %time:~0,-3%
echo %str:~0,-1%
逐字顯示
@echo off&color 0a&title 做語文老師真不容易
set /p= nul
逐字顯示:我是乙個中國人
@echo off
for %%a in (我 是 一 個 中 國 人) do ping -n 2 127.0|set /p b=%%a
for /d %%a in (我 是 一 個 中 國 人) do set /p b=%%anul
::自注set後面的%%a如果新增空格,效果是:我 是 一 個,不加空格,效果是:我是乙個
@echo off&setlocal enabledelayedexpansion
set "str="
for /l %%a in (0 1 50) do (
if "!str:~%%a,1!" neq "" (
set/p=!str:~%%a,1!nul
) else (
pause>nul&exit/b))
schtasks /create /sc daily /ru administrator /rp hzf /tn hu /sd 2008/11/21 /st 21:30:00 /tr c:/windows/system32/notepad.exe
cmd bat批處理命令延時方法
批處理延時啟動的幾個方法 方法一 ping 缺點 時間精度為1秒,不夠精確 vb view plain copy echo off ping 127.0.0.1 n 6 nul start gdh.txt 方法二 vbs start wait 缺點 生成臨時檔案 有點 時間精度為0.001秒,精度高...
cmd bat批處理命令延時方法
批處理延時啟動的幾個方法 方法一 ping 缺點 時間精度為1秒,不夠精確 echo off ping 127.0.0.1 n 6 nul start gdh.txt 方法二 vbs start wait 缺點 生成臨時檔案 有點 時間精度為0.001秒,精度高 echo off echo wscr...
cmd bat批處理命令延時方法
缺點 時間精度為1秒,不夠精確 echo off ping 127.0.0.1 n 6 nul start gdh.txt缺點 生成臨時檔案 有點 時間精度為0.001秒,精度高 echo off echo wscript.sleep 5000 sleep vbs start wait sleep ...