これは私がInvoke-RestMethod
で問題が発生したさらに別の時期です。あなたの助けを借りて、私は進歩することができます。今回の問題は、オブジェクトのポート値を取得するのに苦労していることです。ipaddress=10.128.64.44
。invoke-restmethodによって返されたオブジェクトを操作する方法は?
このコードの実行:私はポートを取得するには、このような何かを実行していることについて考えてきました
ActiveJobs :
ForbiddenAgentsList : ForbiddenAgentsList
IPAddress : 10.128.64.34
LastMsgTime : 2016-11-21T00:16:04.2813148+01:00
Name : Worker02
NumOfSlots : NumOfSlots
Port : 52268
SelectedAgentsList : SelectedAgentsList
Status : Active
Version : 2.29.3740.0
Iteration : 2016/2 SP3 (87)
ActiveJobs :
ForbiddenAgentsList : ForbiddenAgentsList
IPAddress : 10.128.64.44
LastMsgTime : 2016-11-21T00:16:04.2813148+01:00
Name : Worker05
NumOfSlots : NumOfSlots
Port : 53246
SelectedAgentsList : SelectedAgentsList
Status : Active
Version : 2.29.3740.0
Iteration : 2016/2 SP3 (87)
:
if (($worker_port.WorkersList.Worker.IPaddress) -eq '10.128.64.44'){Write-Output $worker_port.Worker.Port }
else {write-host "ouch!""}
powershellの端末で
$user = "admin"
$pass = 'Password1'
$ipdir = '10.128.64.44'
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user, $pass)))
$headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$headers.Add('Authorization',('Basic {0}' -f $base64AuthInfo))
$uri = 'https://myhostname/MAM/wfservice/workers/'
$rep = Invoke-restmethod -method get -Header $headers -Uri $uri
Foreach($worker_port in $rep){
write-output $worker_port.WorkersList.Worker
}
戻り、これを...これは方法ではないように思える。両方のポートを返します。
53246
52268
何が間違っているのですか?どのようにしてそれを解析して、のポート番号を10.128.64.44だけにすることができます。いかなるアドバイスも高く評価されます。
これを試してみてください: '$のrep.WorkersList.Worker |どこIPAddress -eq '10 .128.64.44 '| -expand Port'を選択してください。 –
信じられないほどです。これは正解@MartinBrandlです。さて、多くの、多くの、多くのありがとう!それを回答として投稿しますか?あなたはそれについていくつかのポイントを得ると思いますか? – Okrx
確かに、私は答えとして投稿します。ありがとう。 –