2012-12-26 66 views
0

每小時的數據會進入我的目錄樹的每個文件夾。我需要檢查它是否每隔一小時發生一次,或者是否有任何中斷。 (例如,沒有數據進來2-3小時)。檢查數據是否連續發送

我試圖寫一個PowerShell腳本,將檢查LastWriteTime爲每個文件夾,但它會與差距解決問題。如果我在早上檢查日誌,我會發現如果一小時前有一些數據到達文件夾,那麼一切都可以,但在幾個小時前就沒有。

所以恕我直言LastWriteTime是不適合它。

此外,子文件夾也存在問題。我只需要檢查每個目錄樹中的最後一個文件夾。我不知道如何將降大任之前的文件夾,如:

​​

我曾試圖寫一個腳本來檢查的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

您可以嘗試設置PowerShell腳本在Windows調度程序(每小時運行一次)。這樣,腳本只需檢查過去一小時內是否有數據到達。