Цитата lox-ness:
Если убрать -Append, то в файл выводиться только первая ошибка которая присутствует, а их там несколько »
|
Не так. Выводятся они все, но остаётся в файле — только последняя, поскольку файл перезаписывается при каждой ошибке.
Вам следует определиться с тем, чего Вы хотите. И внятно сие изложить. Вот у меня есть предположение, что на самом деле Вам нужно, чтобы в файл попадали всё ошибки за одно исполнение кода. И на самом деле Вам нужно банально вынести задание имени файла вовне цикла:
Скрытый текст
Код:
Clear-Host
$datetime = Get-Date -Format "dd.MM.yyyy_HH_mm"
$file = "ad-" + $datetime + ".txt"
$folder = "d:\1" + $file_name
$GetInfo = Get-ADUser -Properties SamAccountName -Filter { UserWorkstations -like "*" } -SearchBase "DC=s,DC=o,DC=r"
ForEach($i in $Getinfo) {
try {
$i | Set-ADUser -Clear UserWorkstations -ErrorAction Stop
} catch {
$i.SamAccountName | out-file -FilePath $folder\$file -Append
}
}
чтобы оно не могло меняться во время его выполнения.