摘自《Windows PowerShell 2.0应用编程最佳实践》
#pseventing 1.1
#filesystemwatcher
Add-PSSnapin pseventing
$fsw = New-Object system.IO.FileSystemWatcher
$fsw.Path = [IO.Path]::GetTempPath()
$fsw.EnableRaisingEvents = $true
Start-KeyHandler -CaptureCtrlC
Connect-Event fsw changed,deleted -Verbose
"watching $($fsw.path)"
"entering loop ... ctrl+C to exit"
$done = $false
while($events = @(Read-Event -Wait)){
#read-event alays returns a cllection
foreach($event in $events){
switch($event.name){
"ctrlc"{
"cancelling..."
$done = $true
}
"changed"{
$event
#$done = $true
}
"deleted"{
$event
}
}
}
if($done -eq $true){
break
}
}
调试结果如下图:
下面文章或许你还感兴趣
Today on history:
- 2011: How to Enable AirPrint Service on Windows 7/Vista/XP (32-bit/64-bit)?(0)