iT邦幫忙

0

PowerShell 取得結果中指定的值

  • 分享至 

  • xImage
$computer = [ordered]@{'www.google.com' = 443; 'www.baidu.com' = 80}
Foreach ($com in $computer.Keys) {
    Test-NetConnection -ComputerName $com -Port $($computer[$com])
}

https://ithelp.ithome.com.tw/upload/images/20220817/200557065BY1dlY7Uq.png

各位好,我自己寫了一段PowerShell,因想使用PRTG進行監控,
故需要抓取Script 結果中,TcpTestSucceeded的這個值,我可以用什麼指令取得這個值呢?

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

0
hiiii
iT邦新手 3 級 ‧ 2022-08-17 20:15:56
最佳解答

(Test-NetConnection -ComputerName $com -Port $($computer[$com])).TcpTestSucceeded

您好,若我想同時取得兩個參數的話,可以直接在後面加嗎?
(Test-NetConnection -ComputerName $com -Port $($computer[$com])).TcpTestSucceeded, ComputerName

hiiii iT邦新手 3 級 ‧ 2022-08-18 13:43:26 檢舉

我程式也沒有很熟 不過一般都是存成變數 你要怎麼處理都可以

好的 感謝

0
michaelwan
iT邦高手 1 級 ‧ 2022-08-18 16:48:18
$computer = [ordered]@{'www.google.com' = 443; 'www.baidu.com' = 80}
$result = @()
Foreach ($com in $computer.Keys) {
    $result += Test-NetConnection -ComputerName $com -Port $($computer[$com]
}

$result[0].ComputerNmae
$result[0].TcpTestSucceeded
$result[1].ComputerNmae
$result[1].TcpTestSucceeded

$computer = [ordered]@{'www.google.com' = 443; 'www.baidu.com' = 80}
$result = @{}
Foreach ($com in $computer.Keys) {
    $result.add($com,(Test-NetConnection -ComputerName $com -Port $($computer[$com])))
}

$result['www.google.com'].ComputerName
$result['www.google.com'].TcpTestSucceeded
$result['www.baidu.com'].ComputerName
$result['www.baidu.com'].TcpTestSucceeded

我要發表回答

立即登入回答