2011-01-19 2 views
0

안녕하세요 여러분, 오늘 특정 폴더가 수정되었는지 알려주는 배치 파일을 찾고 있습니다 (매일 아침 실행합니다). 각 폴더를 질의 할 수 있도록 지정해 드리겠습니다. 아직 내 요구 사항을 충족하는 항목을 찾을 수 없었습니다. 누구든지 .bat에 대한 코드가 무엇인지 머리 상단에서 알면 멋진 코드가됩니다. 미리 감사드립니다.수정 된 날짜를 결정하는 배치 파일

답변

0

당신은 출력을 잡으려고 루프 배치 파일 (또는 커맨드 라인)에서 VBScript를에게

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

사용 a를

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 

를 사용할 수 있습니다.

1

여기에 트릭을해야하는 배치 파일 (또는 심지어 VBScript를에서 모든 것을 할 수 있습니다) :

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

이 현재 날짜에 대한 파일 타임 스탬프의 날짜 부분을 비교하여 작동합니다.

작성된 것처럼 현재 디렉토리의 디렉토리를 검사하지만 테스트하려는 파일 스펙으로 *. *를 대체 할 수 있습니다 (또는 인수로 전달할 수 있음).

다른 기본 영어/미국 지역 설정이있는 시스템에서 작동하는지 모르지만 아직 작동하지 않는 경우 조정할 수 있습니다. 시스템이 다른 시간대의 사용자간에 공유되는 경우 어떤 일이 발생 할지도 모릅니다.