Windowsスクリプトでインターネット時間を同期しますか?


11

コマンドラインを使用してシステムクロックをインターネットタイムサーバー(time.nist.govなど)と同期させる方法はありますか?できれば、これはBATまたはPowerShellスクリプトを介して実行可能なものである必要があります。

この特定のニーズが発生するのは、「マシン状態の保存」機能を定期的に使用するVMがいくつかあり、これらのVMは、通常、「ウェイク」したときにクロックを再同期しないためです。多くの場合、私はそれらを再ロードして、クロックが同期していない(そして残っている)日を見つけます。

通常、[インターネット時刻設定]ダイアログを介して時計を再同期することは問題なく機能しますが、これを行うにはマウスを何度もクリックする必要があります。デスクトップにスクリプトを保存して、ダブルクリックして作業を完了させたいだけです。

現在、これはWindows 7 Home x64を実行しているシステム用ですが、XP SP3への下位互換性があればよいでしょう。


1
ほとんどのVMソフトウェア(Virtual PC、VirtualBox)には、とりわけゲストのクロックをホストと同期させるドライバー(「追加機能」)が付属しています。
user1686 2011

@grawity-それらを使用するが、それは仕事をしていないようです。
Iszi

回答:


13

W32tmのリファレンス、「Windows Timeで発生する問題の診断に使用されるツール」:http ://technet.microsoft.com/en-us/library/bb491016.aspxを参照してください。また、w32tm /?

を使用しw32tm /resyncます。net timeまだ設定していない場合は、サーバーを設定する必要がある場合もあります。


2
さて、私はそうしました... @echo off && w32tm /resync && PAUSEBATファイルにそれを投げて、「管理者として実行」がチェックされた状態でデスクトップにショートカットを設定しました。ありがとう!
Iszi

Windows 7でこれを行うと、次のようになりThe following error occurred: The service has not been started.
ます

@echo off && w32tm / resync-コマンドプロンプトがコマンドを認識しないと表示する(w32tm)
Arpit Parekh

.. Windows 7では実行できないコマンド
Arpit Parekh

1
@DeepakKamat、おそらくWindowsサービスを使用する必要があります(実行ボックスまたは検索ボックスに「services.msc」と入力します)。下にスクロールして、Windows Timeを見つけます。それを右クリックし、[プロパティ]を選択します。そこで、スタートアップの種類を自動に設定できます。
Kirk Liemohn、

1
@echo off
net start W32Time
w32tm /resync
echo sync complete
  1. このコードをメモ帳にコピーし、.batファイルとして保存します。
  2. 必要に応じて、管理者権限でバッチファイルを実行するか、タスクスケジューラからこのバッチファイルを実行するようにタスクをスケジュールします。

注:これには、管理者権限とインターネット接続が必要です。


0

以前はnetコマンドでそれを行っていました。

ntp

ネットタイムntp.server.foo

窓用

正味時間\\サーバー

ntpにある種の/ ntpフラグが必要だったかどうか思い出せません...必要な場合は通知されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.