如何从powershell中的集合中提取范围?

TN.*_*TN. 5 powershell extract range

我有很多项目,我想从中提取项目.我需要从开始跳过一些项目,从结束跳过一些.

以下示例已简化.

我首先尝试提取边界元素:

> ("a", "b", "c", "d", "e")[1,-2]
b
d  
Run Code Online (Sandbox Code Playgroud)

这按预期工作.

然而,当我试图提取整个范围时,它返回的东西比我想要的更多(与Python的['a', 'b', 'c', 'd', 'e'][1:-1]效果相反).

> ("a", "b", "c", "d", "e")[1..-2]
b
a
e
d  
Run Code Online (Sandbox Code Playgroud)

它反过来循环.如何改变循环的方向?

我想得到:b c d.

有没有使用集合的真实长度的解决方案?

Sha*_*evy 5

1 ..- 2将从第一项开始计算,直到最后两项.将数组保存到变量并通过计算数组长度减去末尾的项目来指定上限.

$a = "a", "b", "c", "d", "e"
$a[1..($a.length-2)]
Run Code Online (Sandbox Code Playgroud)