Как можно перенаправить вывод в текстовый файл и окно консоли (cmd) одновременно?
Как можно перенаправить вывод в текстовый файл и окно консоли (cmd) одновременно?
Ответы:
Powershell 2.0 поставляется с Tee-Object
командлетом, который делает именно это. Если вы используете Windows 7, он поставляется с установленным Powershell 2.0. Если вы используете более старую версию Windows, Powershell 2.0 доступен для загрузки .
Преимущество Powershell состоит в том, что он может запускать команды, которые также может выполнять cmd.
Пример:
dir | Tee-Object -file c:\output\dir.txt
На StackOverflow есть хороший ответ на идентичный вопрос
В итоге найдите порт Win32 команды Unix tee
.
Используйте Tee-Object для передачи в переменную с ключом -variable, затем используйте переменную для вывода на экран, как вы хотите
get-aduser -filter * -Properties Name, CanonicalName, LogonWorkstations | where { $_.logonworkstations -match "\D" } | Select Name, CanonicalName, logonworkstations | sort canonicalname | Tee-Object -variable Users | Export-Csv -Path ".\$($MyInvocation.MyCommand.Name.split(".")[0])__$(Get-Date -uformat "%Y-%m-%d_%I-%M-%S_%p").csv" -NoTypeInformation
$Users | FL
Clear-Variable Users