gpt4 book ai didi

arrays - 组合 2 个 PowerShell 数组

转载 作者:行者123 更新时间:2023-12-02 06:31:18 26 4
gpt4 key购买 nike

我想弄清楚如何组合 2 个数组,如 here 所述由微软。

$Source = 'S:\Test\Out_Test\Departments'
$Array = Get-ChildItem $Source -Recurse

$Array.FullName | Measure-Object # 85
$Array.FullName + $Source | Measure-Object # 86
$Source + $Array.FullName | Measure-Object # 1

以下只有 1 项要迭代:
$i = 0
foreach ($t in ($Source + $Array.FullName)) {
$i++
"Count is $i"
$t
}

我的问题是,如果 $Source$Array是空的,它不再生成单独的对象并将它们粘在一起,如前面的示例所示。有没有办法将它强制转换为单独的对象而不是一个连接的对象?

最佳答案

在 PowerShell 中,左侧操作数确定使用的运算符重载,右侧将转换为满足操作的类型。

这就是为什么你可以观察到
[string] + [array of strings]结果是 [string] (计数 = 1)[array of strings] + [string]结果是 [array of strings] (计数 = 数组大小 + 1)

你可以强制+运算符通过在左侧参数上使用数组子表达式运算符 ( @() ) 来执行数组连接:

$NewArray = @($Source) + $Array.FullName

关于arrays - 组合 2 个 PowerShell 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35405266/

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