gpt4 book ai didi

json - PowerShell 将字符串转换为 json

转载 作者:行者123 更新时间:2023-12-05 00:20:56 24 4
gpt4 key购买 nike

在 PowerShell 中,我从文件中读取了以下字符串,需要转换为 json:

"@{Account='User01';Domain='Domain01';Admin='True'}"

在我的 PS 脚本中,我尝试这样做(简化):
$myStr = "@{Account='User01';Domain='Domain01';Admin='True'}" | ConvertTo-Json
$mystr
myStr 的结果是:
"@{Account=\u0027User01\u0027;Domain=\u0027Domain01\u0027;Admin=\u0027True\u0027}"

而不是我可以使用的 json。请注意 @字符串开头的符号是我从文件中得到的。

如何将其转换为我可以使用的对象?

最佳答案

您可以尝试一些字符串操作以获取预期的 JSON 格式,然后使用 ConvertFrom-Json将其转换为 PSCustomObject .

简单示例:(很简单,因为这假设被替换的这些字符只会是分隔符)

# First, clean up the string.
PS C:\> $mystring = "@{Account='User01';Domain='Domain01';Admin='True'}"
PS C:\> $mystring = $mystring -replace "^@", ""
PS C:\> $mystring = $mystring -replace "=", ":"
PS C:\> $mystring = $mystring -replace ";", ","
PS C:\> $mystring
{Account:'User01',Domain:'Domain01',Admin:'True'}

# Afterwards, convert to PSCustomObject.
PS C:\> $myobject = $mystring | ConvertFrom-Json
PS C:\> $myobject

Account Domain Admin
------- ------ -----
User01 Domain01 True

这也可以转换回 JSON:
PS C:\> $myobject | ConvertTo-Json
{
"Account": "User01",
"Domain": "Domain01",
"Admin": "True"
}

关于json - PowerShell 将字符串转换为 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33217907/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com