У меня есть следующий сценарий PS:
$folder = "\\vwhd01\shared\zip_files" # Monitor FTP folder with incoming .
$filter = "*.zip" # Filter for zip files.
$destination = "T:\Deleteme" #Output for uncompressed files
$fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{IncludeSubdirectories = $false;NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'}
Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated -Action {
$name = $Event.SourceEventArgs.FullPath
$changeType = $Event.SourceEventArgs.ChangeType
$timeStamp = $Event.TimeGenerated
Expand-Archive -LiteralPath $name -DestinationPath "T:\Deleteme"
Write-Host "The file '$name' was $changeType at $timeStamp" -fore green }
# To stop the monitoring, run the following commands:
# Unregister-Event FileCreated
Этот сценарий запускается, как и предполагалось, из командной строки PS: когда новый файл создается в указанном общем сетевом расположении, он распаковывает этот файл в целевую папку . Однако, если я запускаю сценарий как запланированное задание, ничего не происходит.
Я планирую его со следующими параметрами:
General:
-Run with highest privileges
Trigger:
-Program/Script: powershell
-Arguments: -noprofile -executionpolicy bypass -file F:\ps\WatchFiles.ps1
Кто-нибудь знает, что происходит не так?