我编写了一个脚本,用于在Post
的子文件夹中检测名为W:\SUS Test2
的文件夹,并移动具有" EMMain"的CSV文件。在文件名中。但我遇到的问题是CSV文件无法复制到目标文件夹W:\SUS Test3
,而是将其复制到W:\SUS Test2
文件夹。
$path = "W:\SUS Test2\"
$destination = "W:\SUS Test3\"
$fsw = New-Object System.IO.FileSystemWatcher $path -Property @{
IncludeSubdirectories = $true
NotifyFilter = [IO.NotifyFilters]'DirectoryName
}
$createdLTC = Register-ObjectEvent $fsw -EventName Created -Action {
$item = Get-Item $eventArgs.FullPath
if ($item.Name -like "Post") {
Get-ChildItem $item -filter "*EMMain*" | Copy-Item -dest $destination
}
}
答案 0 :(得分:0)
您正尝试访问其中不可用的部分代码中的$destination
变量。Register-OjbectEvent
中的脚本块无法访问此变量。尝试直接在脚本块中声明$ destination。
$createdLTC = Register-ObjectEvent $fsw -EventName Created -Action {
$destination = "W:\SUS Test3\"
$item = Get-Item $eventArgs.FullPath
If ($item.Name -like "Post") {
Get-ChildItem $item -filter "*EMMain*" | Copy-Item -dest $destination
}
}