我對 Powershell 非常陌生,我無法弄清楚我在使用 Where-Object 時做錯了什么。
以下腳本執行得很好(洗掉了 URL):
Connect-PnPOnline -Url [SomeURL] -UseWebLogin
Get-PnPListItem -List "workproretentiontest" | Select-Object @{label="Filename"; expression={$_.FieldValues.FileRef}}, {$_.FieldValues.FileLeafRef}
顯示這些結果:
Powershell 結果
我需要在這里過濾單個結果,但我無法弄清楚(并且已經失去了很多小時!)
我覺得我已經嘗試了以下所有可能的組合,但不知道為什么它不起作用
| Where-Object {$_.FieldValues.FileLeafRef -eq "201700007"}
當我要求空值時這是什么作業(因為在執行以下操作時回傳每條記錄),這意味著 $_.FieldValues.FileLeafRef 總是回傳空值?但我不知道為什么
| Where-Object {$_.FieldValues.FileLeafRef -eq $null}
任何幫助或指導將不勝感激:)
uj5u.com熱心網友回復:
你寫這個的原因,實際上會'$_.FieldValues.FileLeafRef'在物件上呼叫一個屬性,所以你必須這樣參考它:
| Where-Object {$_.'$_.FieldValues.FileLeafRef' -eq "201700007"}
但它會是更好的風格,首先給它一個合適的名字,就像你做的一樣"Filename":
Select-Object @{label="Filename"; expression={$_.FieldValues.FileRef}},
@{label="Date"; expression={$_.FieldValues.FileLeafRef}} |
Where-Object Date -gt "201700007"
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/338503.html
標籤:电源外壳
上一篇:如何在powershell中從FileDateTime格式的字串中加載日期時間值?
下一篇:如何擴展變數中的屬性
