バッチファイルタイマーを作成して、1日を通して別のバッチを実行/呼び出すにはどうすればよいですか?システム時間で実行する必要がありますxpサーバー2003で実行するには.cmdにすることもできます
9 に答える
スクリプトのタイマー部分については、次を使用することを強くお勧めします。
echo.
echo Waiting For One Hour...
TIMEOUT /T 3600 /NOBREAK
echo.
echo (Put some Other Processes Here)
echo.
pause >nul
このスクリプトは 1 時間 (3600 秒) 待機してからスクリプトを続行し、ユーザーはボタンを押してタイマーをバイパスすることはできません (CTRL + C 以外)。
使用できます
Timeout /t 3600 /nobreak >nul
画面にカウントダウンを表示したくない場合。
コマンドラインや他のアプリケーションではなく、スケジューラー(コントロールパネル)を使用します。
コントロールパネル->スケジュールされたタスク
以下は、1分間待機し、日を確認してからアクションを実行するバッチファイルです。PING.EXEを使用しますが、Windowsに含まれていないファイルは必要ありません。
@ECHO OFF
:LOOP
ECHO Waiting for 1 minute...
PING -n 60 127.0.0.1>nul
IF %DATE:~0,3%==Mon CALL SomeOtherFile.cmd
IF %DATE:~0,3%==Tue CALL SomeOtherFile.cmd
IF %DATE:~0,3%==Wed CALL SomeOtherFile.cmd
IF %DATE:~0,3%==Thu CALL WootSomeOtherFile.cmd
IF %DATE:~0,3%==Fri CALL SomeOtherFile.cmd
IF %DATE:~0,3%==Sat ECHO Saturday...nothing to do.
IF %DATE:~0,3%==Sun ECHO Sunday...nothing to do.
GOTO LOOP
それは多くの方法で改善される可能性がありますが、それはあなたが始めるかもしれません。
AT コマンドはそれを行いますが、それがスケジュールされたタスク GUI の目的です。詳細については、コマンド ウィンドウに「help at」と入力してください。
定期的なタスクを起動するために起動する小さなC#アプリを作成することでそれを行いました。スリープコマンドをサポートする拡張機能をダウンロードせずに、バッチファイルから実行できるかどうかはわかりません。(私の目的では、起動したアプリに利用可能なグラフィックコンテキストがなかったため、Windowsスケジューラは機能しませんでした。)
@echo off
:Start # seting a ponter
title timer #name the cmd window to "Timer"
echo Type in an amount of time (Seconds)
set /p A= #wating for input from user
set B=1
cls
:loop
ping localhost -n 2 >nul #pinging your self for 1 second
set /A A=A-B #sets the value A - 1
echo %A% # printing A
if %A% EQU 0 goto Timesup #if A = 0 go to ponter Timesup eles loop it
goto loop
:Timesup #ponter Timesup
cls #clear the screen
MSG * /v "time Is Up!" #makes a pop up saying "time Is Up!"
goto Exit #go to exit
:Exit
@echo off
:Start
title timer
color EC
echo Type in an amount of time (Seconds)
set /p time=
color CE
:loop
cls
ping localhost -n 2 >nul
set /a time=%time%-1
echo %time%
if %time% EQU 0 goto Timesup
goto loop
:Timesup
title Time Is Up!
ping localhost -n 2 >nul
ping localhost -n 2 >nul
cls
echo The Time is up!
pause
cls
echo Thank you for using this software.
pause
goto Web
goto Exit
:Web
rem type ur command here
:Exit
Exit
goto Exit