我正在创建一个脚本,以监控下载文件夹中的用户活动。我决定使用FileSystemWatcher事件来触发和警告。
这个脚本完成了这项工作,但只在powershell实例运行时才有效,你不想让powershell进程一直运行。
有一种方法可以在关闭流程后保留此事件订阅。
$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true
Register-ObjectEvent $watcher "Created" -Action {
[System.Windows.Forms.MessageBox]::Show($eventArgs.FullPath)
}
答案 0 :(得分:1)
Marthias是对的,你可以有一个计划任务,通过添加来保持PowerShell进程永远活着。
启动程序PowerShell.exe
并添加参数-noexit -noprofile