2012-12-26 4 views
0

매 시간마다 데이터가 내 디렉터리 트리의 모든 폴더에 제공됩니다. 매시간에 끼어 들지 않거나 중단이 있는지 확인해야합니다. 예를 들어 2 ~ 3 시간 동안 데이터가 입력되지 않습니다.데이터가 계속 들어오는 지 확인하십시오.

모든 폴더에 대해 LastWriteTime을 확인하는 PowerShell 스크립트를 작성하려고하지만이 문제로 갭을 해결할 수 있습니다. 아침에 로그를 확인해 보면 한 시간 전에 일부 데이터가 폴더에있는 경우 모두 정상인 것으로 나타 났지만 몇 시간 전에는 없었습니다.

그래서 IMHO LastWriteTime은 적합하지 않습니다.

또한 하위 폴더에 문제가 있습니다. 모든 디렉터리 트리의 마지막 폴더 만 확인해야합니다. 내가 좋아하는 이전 폴더를 삭제하는 방법을 모른다 :

Z:\temp #need to drop 
Z:\temp\foo #need to drop 
Z:\temp\foo\1 #need to check 

나는 LastAccessTime을 확인하는 스크립트를 작성하려고했지만,이 오류가 발생합니다 :

Expressions are only allowed as the first element of a pipeline.

다음과 같이 스크립트입니다 :

$rootdir = "Z:\SatData\SatImages\nonprojected\" 
$timedec1 = (Get-date).AddHours(-1) 
$timedec2 = (Get-date).AddHours(-2) 
$timedec3 = (Get-date).AddHours(-3) 
$timedec4 = (Get-date).AddHours(-4) 


$dir1 = get-childitem $rootdir –recurse | ?{ $_.PSIsContainer } | Select-Object FullName | where-object {$_.lastwritetime -lt $timedec1} | $_.LastWriteTime -gt $timedec4 -and $_.LastWriteTime -lt $timedec3 

$dir1 

그러나 나는 그것이 문제가 해결되지 전에 말했듯이.

- 지속적으로 데이터 수집을 확인하는 것과 관련하여 주요 질문입니다. 나는 손목 트리를 만들 것이다. 그러나 데이터가 매 시간마다 폴더에 있는지 또는 데이터가없는 시간이 있는지 확인해야한다. ...

답변

0

Windows에서 실행되도록 powershell 스크립트를 설정할 수있다. 스케줄러 (매시간 실행). 이 방법으로 스크립트는 지난 1 시간 이내에 도착한 데이터가 있는지 확인해야합니다.

관련 문제