gpt4 book ai didi

powershell - 如何从调用命令写详细?

转载 作者:行者123 更新时间:2023-12-03 14:41:35 29 4
gpt4 key购买 nike

在 PowerShell 中
Write-Verbose-Verbose标志用于在详细模式下运行命令时提供详细信息。我正在远程运行一些脚本并希望捕获详细的输出输出。然而,Invoke-Command似乎没有捕获详细的 channel 。

PS:> Invoke-Command -ComputerName MY-COMPUTERNAME -Verbose { Write-Verbose "blah" }
PS:>

运行远程脚本时如何捕获详细输出?

最佳答案

我认为您可以做的最好的事情是创建一个具有 [CmdletBinding()] 的函数,因此它支持 -verbose 开关。然后,您将能够使用本地 $VerbosePreference 捕获本地函数的详细状态,并将其传递到 invoke 命令中。这仅适用于 Powershell 3.0 及更高版本,因为您需要使用 $Using 范围修饰符。

Function write-blah{
[CmdletBinding()]
Param()
Invoke-Command -ComputerName MY-COMPUTERNAME {$VerbosePreference=$Using:VerbosePreference; Write-Verbose "blah" }
}

然后你会像这样调用你的函数。
Write-Blah -verbose

在测试中这对我有用。我相信您的函数必须支持参数,因此是空的 Param() 块。

关于powershell - 如何从调用命令写详细?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16197021/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com