简短版:为什么Test-Connection
在运行-AsJob
时仅提供一个结果?
详细版本:
在Powershell中运行Test-Connection
(ping!)命令(以管理员身份运行)时,它使用4
参数的默认值Count
。这给了我预期的结果(为清楚起见,删除了一些不相关的数据):
PS C:\Windows\system32> Test-Connection www.stackoverflow.com
Destination IPV4Address IPV6Address Bytes Time(ms)
----------- ----------- ----------- ----- --------
www.stackove... 64.34.119.12 {} 32 117
www.stackove... 64.34.119.12 {} 32 113
www.stackove... 64.34.119.12 {} 32 111
www.stackove... 64.34.119.12 {} 32 113
然而,当我使用-AsJob
标志运行它时,似乎(在等待几秒后运行Receive-Job
时)Count
只有1,但我预计它会是4并获得与上述类似的结果。相反,我得到了这个:
PS C:\Windows\system32> Test-Connection www.stackoverflow.com -AsJob
Id Name State HasMoreData Location Command
-- ---- ----- ----------- -------- -------
1 Job1 Running False . Test-Connection
PS C:\Windows\system32> Receive-Job 1
Destination IPV4Address IPV6Address Bytes Time(ms)
----------- ----------- ----------- ----- --------
www.stackove... 64.34.119.12 {} 32 113
即使您为AsJob
提供了特定值,Count
变体始终也会返回行。
我的Google-fu和Get-Help-fu似乎不够。有人可以解释这里发生了什么,最好有一些指示我自己如何以及在哪里找到这些信息(例如哪些帮助文件或来源解释了这种行为)?
答案 0 :(得分:3)
可能是个错误。在v3中,你可以获得4次ping。