无法使用带引号的 Update-AzTableRow 进行更新
not able to update using Update-AzTableRow with quotes
我有以下 powershell 脚本来更新 table 存储中的值:
[string]$filter = `
[Microsoft.Azure.Cosmos.Table.TableQuery]::GenerateFilterCondition("Query",`
[Microsoft.Azure.Cosmos.Table.QueryComparisons]::Equal,"(Type = 'FTE')")
$user = Get-AzTableRow `
-table $cloudTable `
-customFilter $filter
# Change the entity.
$user.Query = "[{"filter":"(Type = 'FTE')"}]" // I need to include all these double quotes, single quotes
$user | Update-AzTableRow -table $cloudTable
我看到这个错误:表达式或语句中出现意外标记 'filter":"'。我该如何解决?
顺便说一句:如果手边的行不是,则不需要明确的行继续(通过行尾的`
)在句法上是一个完整的语句。换句话说:在您的代码中,只有 Get-AzTableRow
调用需要它。
您的主要问题是 您正试图嵌入 "
个字符。在 "..."
字符串 中没有转义 ,这会导致您的问题。
转义 "
个字符。 在 expandable (double-quoted) string ("..."
)、 中使用 `"
(或""
):
因此:
$user.Query = "[{`"filter`":`"(Type = 'FTE')`"}]"
另请参阅:概念性 about_Quoting_Rules 帮助主题。
我有以下 powershell 脚本来更新 table 存储中的值:
[string]$filter = `
[Microsoft.Azure.Cosmos.Table.TableQuery]::GenerateFilterCondition("Query",`
[Microsoft.Azure.Cosmos.Table.QueryComparisons]::Equal,"(Type = 'FTE')")
$user = Get-AzTableRow `
-table $cloudTable `
-customFilter $filter
# Change the entity.
$user.Query = "[{"filter":"(Type = 'FTE')"}]" // I need to include all these double quotes, single quotes
$user | Update-AzTableRow -table $cloudTable
我看到这个错误:表达式或语句中出现意外标记 'filter":"'。我该如何解决?
顺便说一句:如果手边的行不是,则不需要明确的行继续(通过行尾的`
)在句法上是一个完整的语句。换句话说:在您的代码中,只有 Get-AzTableRow
调用需要它。
您的主要问题是 您正试图嵌入 "
个字符。在 "..."
字符串 中没有转义 ,这会导致您的问题。
转义 "
个字符。 在 expandable (double-quoted) string ("..."
)、 中使用 `"
(或""
):
因此:
$user.Query = "[{`"filter`":`"(Type = 'FTE')`"}]"
另请参阅:概念性 about_Quoting_Rules 帮助主题。