我正在尝试在服务器上远程执行操作,并使用转录函数记录所有操作。
问题是:是否有一种方法可以使用invoke命令获取2012 R2服务器(与2016相同(的启动记录信息?或者只在日志文件中打印powershell控制台输出
逻辑如下:
function DoLogic() {
#Algo / Actions
Write-Host "TEST"
}
$servers = "server1","server2", "etc"
Start-Transcript -Path "E:tmptranscript.txt" -Verbose
foreach ($server in $servers) {
Write-Host "Server: " -NoNewline
Write-Host "$server " -ForegroundColor Yellow
Invoke-Command -ComputerName $server -ScriptBlock ${Function:DoLogic}
}
Stop-Transcript
暗示服务器1是2012 R2,服务器2是2016
问题是成绩单的输出是:
服务器:
服务器1
服务器:
服务器2
信息:你好
Powershell控制台输出:
转录已启动,输出文件为E:\tmp\Transcript.txt
服务器:server1
你好
服务器:server2
你好
转录已停止,输出文件为E:\tmp\Transcript.txt
尝试写入输出而不是写入主机