powershell - 在 foreach 循环中将逗号分隔的值拆分为换行符 - PowerShell
问题描述
我有不同变量的数据,我正在使用PSObject
. 由于我需要使用foreach
循环,因此我在$repo.name
列上获得了多个值,但其他两列$group_id
&$group.name
是单个值。
'
$all = foreach($group in $all_groups)
{
$group_id = $group.id
$uri = "xxx/reports"
$repo = (Invoke-RestMethod -Uri $uri –Headers $auth_header –Method GET).value
New-Object -Typename PSObject -Property @{
Group = $group_ID
GroupName = $group.name
DisplayName = ($repo.name -join ',')
} | Select-Object Group,GroupName, DisplayName '
我得到了低于结果,但我的预期结果是不同的。
当前结果
Group GroupName DisplayName
----- --------- -----------
A A0001 A1, A2, A3, A4
B B0001 B1, B2, B3, B4
预期结果
Group GroupName DisplayName
----- --------- -----------
A A0001 A1
A A0001 A2
A A0001 A3
A A0001 A4
B B0001 B1
B B0001 B2
B B0001 B3
B B0001 B4
解决方案
如果不按摩$group.ID
,则无需将其复制到另一个变量
根据mclayton的好提示,并使用更简单的[PSCustomObject]
:
$all = foreach($group in $all_groups) {
$uri = "xxx/reports"
$repo = (Invoke-RestMethod -Uri $uri –Headers $auth_header –Method GET).value
foreach($repoName in $repo.Name){
[PCustomObject]@{
Group = $group.ID
GroupName = $group.Name
DisplayName = $repoName
}
}
}
$all
推荐阅读
- c# - 如何在具有多个表的linq中使用join并使用orderby?
- vba - 根据文本框值填充多列列表框
- c - 实现可变参数使用函数的可选参数?
- amazon-web-services - 在 terraform 中使用本地变量进行变量的棘手转换
- python - 如何在绘图中添加条形上方的百分比差异
- reactjs - useEffect 挂钩不等待异步依赖
- android - 如何使我的布局可滚动: RefreshLayout + NesteScrollView + ViewPager + Tabs + RecyclerViewviewpager + Tabs + RecyclerView
- javascript - Dropzone.js - 处理 Stock Android 浏览器发送的 Base64 图像文件 - Base64 中缺少 MIME 图像类型
- laravel - 有没有办法在刀片文件中使用 ES6 并通过混合进行编译?
- javascript - ApexChart 数据的 y 轴不匹配