gpt4 book ai didi

powershell - 抑制 Test-NetConnection 的信息

转载 作者:行者123 更新时间:2023-12-04 00:31:48 24 4
gpt4 key购买 nike

如何隐藏来自 Test-NetConnection -ComputerName localhost 的详细信息PowerShell session ?
Test-NetConnection将相当多的信息写入控制台顶部显示的控制台,覆盖进度条。

enter image description here

可以通过设置 -InformationLevel 来抑制输出。至Quiet像这样
看起来可以像 -InformationLevel 一样抑制输出参数,但事实证明,即使使用 -InformationLevelQuiet显示控制台顶部的信息。

Test-NetConnection -ComputerName localhost -InformationLevel Quiet

我想设置 InformationLevel整个脚本只有一次,就像你会 suppress the progress bar when using Invoke-WebRequest .
$progressPreference = 'silentlyContinue'    # Subsequent calls do not display UI.
Invoke-WebRequest ...
$progressPreference = 'Continue' # Subsequent calls do display UI.

据我所知,没有类似的 $InformationLevelPreference Test-NetConnection 会监听。

最佳答案

Ansgar 提出的解决方案的替代方案是使用 $PSDefaultParameterValues automatic variable :

PS C:\> Test-NetConnection localhost

ComputerName : localhost
RemoteAddress : ::1
InterfaceAlias : Loopback Pseudo-Interface 1
SourceAddress : ::1
PingSucceeded : True
PingReplyDetails (RTT) : 0 ms

PS C:\> $PSDefaultParameterValues['Test-NetConnection:InformationLevel'] = 'Quiet'
PS C:\> Test-NetConnection localhost
True
$PSDefaultParameterValues 中的条目字典具有 CommandName:ParameterName 形式的键,然后该值是您要默认提供的参数参数值。您可以将通配符合并为 CommandName 的一部分。必要时部分

切换到 -InformationLevel:Quiet 时您可能看到进度条消失的原因是向环回接口(interface)发出单个 ICMP 请求并返回单个 bool 值发生得如此之快,以至于主机应用程序永远没有机会实际获取进度流状态更改并在返回提示之前显示进度覆盖。

如果您想在执行期间抑制顶部的进度条(无论命令运行多长时间),请使用 $ProgressPreference多变的:
PS C:\> $ProgressPreference = 'SilentlyContinue'
PS C:\> Test-NetConnection localhost

关于powershell - 抑制 Test-NetConnection 的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46214143/

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