自動更新Sysinternalsツールへのバッチスクリプト
Microsoft Sysinternalsツールは非常に強力で便利ですが、それらが欠けている1つの機能は新しいバージョンをチェックする機能です。現在、Sysinternalsサイトを定期的にチェックし、最新の状態を維持するために、システムと最新の公式リリースとの間でバージョンを比較する必要があります。.
より良い解決策として、システムにあるSysinternalsツールを自動的に更新するバッチスクリプトを作成しました。あなたがしなければならないのはあなたのSysinternalsツールが置かれているフォルダにバッチスクリプトファイルを置くことだけで、スクリプトは残りをします、設定は必要ありません。.
これがどのように動作するのかです:
- Sysinternalsからツールの現在のリストがダウンロードされ、システム上のファイルと比較されます.
- 一致するものが見つかった場合は、Sysinternalsの現在のバージョンがシステムにコピーされます。.
- ツールが現在実行されている場合は、ツールが閉じられ、スクリプトが完了すると再起動されます。.
スクリプト
@ECHO OFFタイトルSysinternalsアップデータECHO SysintenalsアップデータECHO作成者:Jason Faulkner ECHO SysadminGeek.com ECHO。エコー。 SETLOCAL ENABLEDELAYEDEXPANSION SET SysInternalsTools = "%Temp%SysInternalsTools.tmp.txt" SET CurrentTasks = "%Temp%CurrentTasks.tmp.txt" SET StartWhenFinished = "%Temp%StartWhenFinished.tmp.txt" ECHO検出ディレクトリ:%〜dp0% d 0 CD%〜p 0 ECHO。エコー。 ECHO現在の工具リストをダウンロード中…SET LiveShare = \ live.sysinternals.comtools START / MIN%LiveShare%DIR%LiveShare%/ B>%SysInternalsTools%TASKLIST>%CurrentTasks%ECHO;終了したツール>%StartWhenFinished%ECHO。 ECHOインストールされたSysInternalsツールの更新FOR / F %% A IN( 'DIR / B')DO(FOR / F "usebackq" %% B IN(%SysInternalsTools%)DO(IF / I [%% A] == [% %B](ECHO更新%% A FOR / F "usebackq" %% C IN(%CurrentTasks%)DO(IF / I [%% A] == [%% C](ECHO %% Cは現在実行中です。キリングプロセス - キュー再起動ECHO %% C >>%StartWhenFinished%TASKKILL / IM %% A / T / F))XCOPY%LiveShare %%% B %% A / Y ECHO。))ECHO。 ECHO強制終了されたタスクを再開していますFOR / F "usebackq skip = 1" %% A IN(%StartWhenFinished%)DO(ECHO開始%% A START "Sysinternalsツール" "%% A")IF存在%SysInternalsTools%DEL%SysInternalsTools%IF EXIST%CurrentTasks%DEL%CurrentTasks%IF EXIST%開始時終了%DEL%開始時終了%ENDLOCALエコー。一時停止
リンク集
Sysadmin GeekからSysinternals Updaterスクリプトをダウンロードしてください。