监视Powershell中的文件并使用ArrayList

监视Powershell中的文件并使用ArrayList,powershell,Powershell,我是新来的。我想在ArrayList每次更改时向其添加一个文件路径。但是,此PowerShell脚本以某种方式失败。有什么提示我可能做错了什么 $watcher = New-Object System.IO.FileSystemWatcher $watcher.Path = "C:\Mydir" $watcher.IncludeSubdirectories = $true $watcher.EnableRaisingEvents = $true $jobs = New-Object Syste

我是新来的。我想在ArrayList每次更改时向其添加一个文件路径。但是,此PowerShell脚本以某种方式失败。有什么提示我可能做错了什么

$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\Mydir"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true

$jobs = New-Object System.Collections.ArrayList

$changed = Register-ObjectEvent $watcher "Changed" -Action {
    $changedFile = $($eventArgs.FullPath)
    $jobs.Add($changedFile)
}

这是一个范围问题。添加全局范围修改器:

$global:jobs.Add($changedFile)

有关更多帮助,请参阅关于作用域。

是否可以将$jobs作为已更改操作的参数?请尝试MessageData参数。