Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell以小写形式转换为Json密钥_Json_Powershell_Lowercase - Fatal编程技术网

Powershell以小写形式转换为Json密钥

Powershell以小写形式转换为Json密钥,json,powershell,lowercase,Json,Powershell,Lowercase,运行此代码 get-service | Select-Object -Property displayname, status, name | convertTo-Json 例如,在如下输出中产生的结果: { "DisplayName": "Adobe Acrobat Update Service", "Status": 4, "Name": "AdobeARMservice" }, { "DisplayName": "Adobe Flash Playe

运行此代码

get-service | Select-Object -Property displayname, status, name | convertTo-Json
例如,在如下输出中产生的结果:

{
    "DisplayName":  "Adobe Acrobat Update Service",
    "Status":  4,
    "Name":  "AdobeARMservice"
},
{
    "DisplayName":  "Adobe Flash Player Update Service",
    "Status":  1,
    "Name":  "AdobeFlashPlayerUpdateSvc"
},
[
    {
        "displayname":  "Application Identity",
        "status":  1,
        "name":  "AppIDSvc"
    },
    {
        "displayname":  "Application Information",
        "status":  4,
        "name":  "Appinfo"
    },

是否可以以小写形式返回键?

您可以使用正则表达式来解决此要求:

#Create a variable with the info
$json = Get-Service | Select-Object -Property displayname, status, name | convertTo-Json
#Use RegEx
[regex]::Replace(
    $json,
    '(?<=")(\w+)(?=":)',
    {$args[0].Groups[1].Value.ToLower()}
)

您可以使用正则表达式来解决此要求:

#Create a variable with the info
$json = Get-Service | Select-Object -Property displayname, status, name | convertTo-Json
#Use RegEx
[regex]::Replace(
    $json,
    '(?<=")(\w+)(?=":)',
    {$args[0].Groups[1].Value.ToLower()}
)

您可以使用计算属性:

get-service | Select-Object -Property @{n='displayname';e={$_.displayname.tolower()}}, status, name | convertTo-Json
这会改变输出的格式

另外,你可以对所有属性重复这一点
pps

您可以使用计算属性:

get-service | Select-Object -Property @{n='displayname';e={$_.displayname.tolower()}}, status, name | convertTo-Json
这会改变输出的格式

另外,你可以对所有属性重复这一点
pps

多谢各位。是否可以保持值不变(仅将键的格式设置为小写)?使用这种方法,键和值都被格式化为小写。只需从表达式中删除
.tolower()
<代码>@{n='displayname';e={$\u.displayname}}谢谢。是否可以保持值不变(仅将键的格式设置为小写)?使用这种方法,键和值都被格式化为小写。只需从表达式中删除
.tolower()
@{n='displayname';e={$\ displayname}}
似乎是一种bash的做事方式,又称次优,似乎是一种bash的做事方式,又称次优