在 Powershell 中提取数组的最后一行

Cyc*_*key 3 api powershell

我正在使用 Powershell 通过 API 提取数据。由于某种原因,输出提供了多行数据,但我只对最后一行感兴趣。

如何修剪或过滤数组,以便它只显示行,例如{"preview":false...

获得最后一行后,我将使用 ConvertFrom-Json 将其转换为哈希表

任何建议将不胜感激!

$output
{"preview":true,"offset":0,"lastrow":true,"result":{"TotalSuccess":"1152091","TotalUnsuccessful":"13759","Total":"1165850","Unsuccessful%":"6.80"}}
{"preview":true,"offset":0,"lastrow":true,"result":{"TotalSuccess":"1204330","TotalUnsuccessful":"14265","Total":"1218595","Unsuccessful%":"6.76"}}
{"preview":true,"offset":0,"lastrow":true,"result":{"TotalSuccess":"1233151","TotalUnsuccessful":"14500","Total":"1247651","Unsuccessful%":"6.75"}}
{"preview":true,"offset":0,"lastrow":true,"result":{"TotalSuccess":"1249102","TotalUnsuccessful":"14714","Total":"1263816","Unsuccessful%":"6.76"}}
{"preview":true,"offset":0,"lastrow":true,"result":{"TotalSuccess":"1262812","TotalUnsuccessful":"14794","Total":"1277606","Unsuccessful%":"6.73"}}
{"preview":false,"offset":0,"lastrow":true,"result":{"TotalSuccess":"1271004","TotalUnsuccessful":"14873","Total":"1285877","Unsuccessful%":"6.73"}}
Run Code Online (Sandbox Code Playgroud)

Mat*_*sen 6

多个选项,假设$output是一个数组或类似的可枚举事物集合:

# using `Select-Object`:
$output |Select -Last1

# using array index
$output[$output.Length - 1]

# using negative array index
$output[-1]

# iterate over collection until you reach the end:
$last = $null
foreach($item in $output){
    $last = $item
}
Run Code Online (Sandbox Code Playgroud)

如果$output是多行字符串,请-split首先使用正则表达式运算符按换行符进行拆分:

$output -split '\r?\n' |Select -Last 1
Run Code Online (Sandbox Code Playgroud)