数组被错误地分解为Powershell管道中的元素

时间:2014-05-30 11:12:47

标签: arrays powershell pipeline

我有一个powershell函数,它返回一个2元素数组,其中每个元素都是一个字符串。函数的return语句返回:

@($ source,@ destination)。

该函数正在文件夹中搜索需要重命名的项目,并将它们作为原始名称发出,因此返回@($ source,@ destination)。源和目的地都是字符串。

但是,当我将其传输到重命名项目时,例如:

fn | %{rename-item $ [0] $ [1] -whatif}

这失败了因为' $ _ [0]'被评估为第一个字符串的第一个字符,而不是2个元素数组的第一个元素。因此,Array被分解为其组成元素,从而丢失了数组。

如果我发出此命令: fn | %{$ _.GetType()} 我得到了一系列返回的String类型,而不是我期待的数组。因此,在这里有点想念并且不确定发生了什么。

0 个答案:

没有答案