web-dev-qa-db-ja.com

Windows Serverタスクスケジューラを使用して、フォルダーの変更時にタスクをトリガーする方法

フォルダツリーが変更されるたびにスクリプトを開始することは可能ですか?.

例えば。:

root
  dir1
    file1
  dir2
    file1
    file2

rootがリッスンされ、たとえば、file2が変更されたり、ディレクトリツリーのどこかに新しいファイルが追加されたりすると、スクリプトが開始されます。

サブ質問は次のようになります:スケジュールされたタスクはキューに入れられたイベントによってトリガーされますか?

ご協力いただきありがとうございます!

10
Julio Guerra

PowershellとWMIイベントを使用してこれを確実に行うことができます。

イベントを監視するためのPowerShellの設定を説明するリンクは次のとおりです。

http://www.pavleck.net/powershell-cookbook/ch31.htmlWayback Link 、2013年11月5日以降)

探しているイベントの種類を説明するリンクは次のとおりです。

http://blogs.technet.com/b/heyscriptingguy/archive/2005/04/04/how-can-i-monitor-for-different-types-of-events-with-just-one- script.aspx

7
Chris N

イベントログに記録されるイベントに基づいてタスクをトリガーできますが、作成中の新しいファイルまたは変更中のファイルに基づいてイベントを作成する機能はありません。

(セキュリティログからの)オブジェクトアクセス追跡イベントをある程度使用できますが、それらは大量のノイズを生成するため、これが非常にうまく機能することはほとんどありません。

ただし、サードパーティ製品(無料バージョンが利用可能) EventSentry を使用して、タスクスケジューラと組み合わせて、またはスタンドアロンでこれを実現できます。これには、ファイルが追加、変更、または削除されたときに(チェックサムの変更を含む)イベントをイベントログに記録するファイル監視機能が含まれています。次に、ログに記録されたイベントに基づいてプロセスをトリガーできます。

タスクスケジューラと組み合わせて使用​​できる無料のバージョン(EventSentry Light)もあります。 EventSentry Lightは、最初に(アプリケーションイベントログ内の)ファイル監視に基づいてイベントを生成し、それをタスクスケジューラのトリガーとして使用できます。

2
Lucky Luke