出于某种原因,当PowerShell被设置为二维数组的第二维时,它会获取一个字符串数组并将其转换为单个字符串(或者可能是一个字符数组?):
以下是$path
数组的初始输出:
PS C:\Users\crd> $path
C:
Program Files (x86)
Common Files
Adobe
ARM
1.0
armsvc.exe
path[0]
数组条目是一个字符串值:
PS C:\Users\crd> $path[0]
C:
现在我们将$test[]
数组中的第一个值设置为等于我们的字符串数组:
PS C:\Users\crd> $test[0]=$path
您可以看到整个字符串数组已合并:
PS C:\Users\crd> $test[0]
C: Program Files (x86) Common Files Adobe ARM 1.0 armsvc.exe
这是为什么?我确信微软在某处记录了这一点,但我很难找到它。
我期望输出保持不变。请注意以下输出:
PS C:\Users\chris> $test[0][0]
C
我希望这与$path[0]
的{{1}}输出相同。为什么要合并?
答案 0 :(得分:0)
您将项目的哈希值更改为单个字符串值。按预期工作。