2011-12-21 16 views
0

フォルダ内のabc.txtというファイルを検索するスクリプトが必要なのは、その場所に生成されたことがわかるまでXYZです。スクリプトは、60秒ごとにファイルを検索する必要があります。ファイルが生成されたら、それをある場所にコピーするといった特定のタスクを実行する必要があります。Windowsのバッチファイルでファイルを検索するためのループ

答えて

0

私はあなたがファイルウォッチャーを探していると思います。あなたは、Javaを使用したい場合は、次のリンクはあなたに有用であろう: http://docs.oracle.com/javase/tutorial/essential/io/notification.html

あなたが道に従うことによってイベントからファイル名を取得できます。

WatchEvent<Path> ev = (WatchEvent<Path>)event; 
    Path filename = ev.context(); 

そして、あなたがしたいタスクを行うことができますファイルが作成された場合は行います。

1

基本的に2つの選択肢があります。

  1. タスクスケジューラでバッチをスケジュールするこれが私が推奨する選択肢です。

    • まず、その後、毎分

      schtasks /create /sc minute /mo 1 /tn "check abc.txt exists" /tr "cmd /c c:\bats\checkabc.bat" 
      
  2. それとも...を実行するスケジュールをこの

    @echo off 
    if exist c:\xyz\abc.txt (
        rem do here what you want 
    ) 
    
  3. に似ごcheckabc.batファイルを作成し、バッチファイルのループ

    :DOCHECK 
    IF EXIST abc.txt (
        ECHO abc.txt exists, do your things here... 
    ) 
    WAIT60SECS 
    GOTO :DOCHECK 
    

    しかし、oops、WAIT60SECSは存在しないコマンドです。それを実装する方法はいくつかあります。 http://www.robvanderwoude.com/wait.php

関連する問題