Я пишу сценарий PowerShell, и одна из его частей должна добавить нового пользователя в Active Directory. Я использую командлет New-ADUser
и хочу перенаправлять любые ошибки (если они возникнут) в файл. Так что я пишу
New-ADUser -smth -smth 2>> ./log.txt
Но он создает только пустой файл log.txt
, когда я имитирую ошибку. Что я сделал не так?
New-ADUser
. Измените свой оператор на допустимый синтаксис, и он будет работать (например,New-ADUser -Identity "nonexistingusername"
) - person Mathias R. Jessen   schedule 08.12.2015New-ADUser -Identity "j"
. Я получил сообщение об ошибке ` New-ADUser : невозможно найти параметр, соответствующий имени параметра 'Identity'..... `, и я хочу записать это сообщение в log.txt. Я делаю `New-ADUser -Identity j 2››path\to\log.txt`. Он создает файл, но он пустой - person Vasiliy Plotnikov   schedule 08.12.2015Identity
был плохим примером (уNew-ADUser
его нет). Моя точка зрения заключалась в том, что перенаправитель вывода получает только поток ошибок из самого командлета, а не любые ошибки, выдаваемые средой (например, синтаксические ошибки). Вы можете заключить вызов в блок сценария, если хотите также зафиксировать ошибки синтаксического анализа:&{New-ADUser -smt} 2>> error.log
- person Mathias R. Jessen   schedule 08.12.2015