Zizzay,
Вот код, который должен делать то, что вы хотите. Он помещает команду copy-item в конструкцию TRY / Catch, чтобы отловить и сообщить о любых ошибках в процессе копирования. Я предположил, что последний элемент вашего источника (Startup) - это папка, поэтому необходим аргумент Recurse в $ CIArgs. Если это не папка, удалите строку Recurse. Я также разбил ваши пути, чтобы сократить количество повторений и упростить изменение. Примечание: я тестировал это в одноранговой локальной сети, должно работать в локальной сети на основе домена.
$onlineComputers = "Computer1","ComputerN"
$FSBase = "C$\ProgramData\Microsoft\Windows\Start Menu\Programs"
$OnlineComputers |
ForEach-Object {
Try {
$CIArgs =
@{Path = "\\PTFGW-061403573\$FSBase"
Destination = "\\$_.\$FSBase\Startup"
Force = $True
Recurse = $True
ErrorAction = 'Stop'}
Copy-Item @CIArgs
}
Catch {
Write-Host @"
Could not write to: $_.
"@
} #End Catch
} #End ForEach...
HTH