2011-01-19 13 views
0

今日、特定のフォルダが変更されているかどうかを知るためにバッチファイルを探しています(毎朝実行します)。私は各フォルダを照会するように指定して嬉しいです、私はまだ私の要件を満たすものを見つけることができませんでした。もし誰かが頭の上を知っていると、.batのコードはどんなものになるのだろうか、それは素晴らしいだろう:)前もってありがとう。変更された日付を決定するためのバッチファイル

あなたのバッチファイル(またはコマンドライン)でのVBScript

Set objFS = CreateObject("Scripting.FileSystemObject") 
strFolder = WScript.Arguments(0) 
Set objFolder = objFS.GetFolder(strFolder) 
If DateDiff("d", Now, objFolder.DateLastModified) = 0 Then 
    WScript.Echo "0" 
End If 

を使用することができます

答えて

0

C:\test>cscript //nologo test.vbs myFolderName 

出力をキャッチするためにforループを使用します。

1

はここでトリックを行う必要があり、バッチファイル(またはあなたもVBScriptですべてを行うことができます):

@echo off 
setlocal ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION 
for /D %%Q IN (*.*) DO (
    set FILETIME=%%~tQ 
    if "!FILETIME:~0,10!"=="%DATE:~4%" echo %%Q 
) 

これは、現在の日付に対して、ファイルのタイムスタンプの日付の部分を比較することによって動作します。

書かれているように、カレントディレクトリのディレクトリをチェックしますが、*。*をテストするファイルの指定に置き換えることもできます(または引数として渡すこともできます)。

他の既定の英語/米国地域の設定で動作するかどうかわかりませんが、まだ動作していない場合は調整する必要があります。私はまた、システムが異なるタイムゾーンのユーザー間で共有されている場合にどうなるかわかりません。

関連する問題