時刻同期コマンド エラーメッセージ 対策
時刻同期コマンドを実行した際の出力メッセージは、
再同期コマンドをローカル コンピューターに送信しています
コマンドは正しく完了しました。
上記が正常なのですが、まれに、
再同期コマンドをローカル コンピューターに送信しています
時刻データが利用できなかったため、コンピューターは同期をとり直しませんでした。
のエラーと思われるメッセージが出る場合があります。
コマンドを再実行すれば、正常なメッセージになるのですが、エラーコードを出力しないので自動化をやめ単純に2回実行してみました。
しばらく検証していましたが、問題ないようなので公開します。
エラーと思われるメッセージが表示されなくなります。
時刻同期 バッチファイルです。 ↓
@echo off
rem ■■W32Timeサービス開始判定あり 時刻同期NEW bat■■
rem ----- 管理者権限で実行 -----
echo.
echo コマンドプロンプトを管理者として実行します
echo.
for /f "tokens=3 delims=\ " %%A in ('whoami /groups^|find "Mandatory"') do set LEVEL=%%A
if not "%LEVEL%"=="High" (
powershell -NoProfile -ExecutionPolicy Unrestricted -Command "Start-Process \"%~f0\" -Verb runas"
exit
)
rem --Windows Timeサービス W32Time状態判定--
sc query W32Time | findstr STATE | findstr RUNNING > NUL
if %ERRORLEVEL% neq 0 (
rem --Windows Timeサービス W32Timeを開始--
echo.
echo ==============================================
echo Windows Timeサービス W32Timeを開始します。
echo ==============================================
echo.
net start W32Time
timeout /T 3 > NUL
)
rem --時刻同期--
echo.
echo ====================
echo 時刻同期します。
echo ====================
echo.
w32tm /resync > NUL
w32tm /resync
echo.
echo ===========================
echo 最終時刻同期時間を確認
echo ===========================
echo.
w32tm /query /status
echo 終了します。
timeout /T 3
exit
以前からの変更点は、
w32tm /resync > NUL
の1行のみ追加しています。
画面には表示されません。(1秒程度遅れるだけです)
個人的にこちらを使用していますが、問題なく使用出来ています。
実行中に表示される画面です。3秒後に自動終了します。
エラーメッセージが表示された場合に、再度実行するのが面倒な方におススメします。
以前の記事 詳細はこちらに記載されています。↓