[英]Powershell escaping single quotes
如何在下面的 Powershell 命令中轉義單引號?
Get-Recipient -Filter "Members -eq 'CN=Jane D'Amico (Contoso),OU=fourthcoffee.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=NAMPR1AA001,DC=PROD,DC=OUTLOOK,DC=COM'"
我懷疑這是由於D'Amico
而失敗的。 不是 powershell 人,所以請 go 對我放心。
無法將參數“過濾器”綁定到目標。 異常設置“過濾器”:“過濾器語法無效。
只要你只是傳遞一個字符串(你是),你可以再次使用雙引號,並像這樣轉義它:
Get-Recipient -Filter "Members -eq `"CN=Jane D'Amico (Contoso),OU=fourthcoffee.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=NAMPR1AA001,DC=PROD,DC=OUTLOOK,DC=COM`""
為了避免引用,您需要將它們加倍,因此 D'Amico 需要成為 D'Amico。
處理此問題的一個好方法是首先將您的用戶字符串分配給一個變量
$user = "CN=Jane D'Amico (Contoso),OU=fourthcoffee.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=NAMPR1AA001,DC=PROD,DC=OUTLOOK,DC=COM"
然后在使用之前替換里面的任何單引號
$user = $user -replace "'", "''"
Get-Recipient -Filter "Members -eq '$user'"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.