Ich habe eine große Menge von Gegenständen und möchte Gegenstände daraus extrahieren. Ich muss einige Elemente vom Start und einige vom Ende überspringen.Wie extrahiere ich einen Bereich aus einer Sammlung in Powershell?
Das folgende Beispiel ist vereinfacht.
Ich versuchte zunächst, die Begrenzungselemente zu extrahieren:
> ("a", "b", "c", "d", "e")[1,-2]
b
d
Dies funktioniert wie erwartet.
Wenn ich jedoch versuchte, den gesamten Bereich zu extrahieren, gibt es etwas anderes zurück, als ich möchte (im Gegensatz zu Pythons , die gut funktioniert).
> ("a", "b", "c", "d", "e")[1..-2]
b
a
e
d
Es läuft in umgekehrter Richtung. Wie ändere ich die Richtung der Schleife?
Ich möchte erhalten: b c d
.
Gibt es eine Lösung ohne die tatsächliche Länge der Sammlung zu verwenden?
Ist es möglich, ohne die Länge zu verwenden? –
Mir ist nicht bewusst, dass das Zuweisen des Arrays zu einer Variablen ein Teil ist, den ich auch nicht mag. Sie müssen zuerst die obere Grenze kennen, um alle Elemente außer den letzten beiden zu erhalten. –
Wenn die Reihenfolge der Objekte nicht zählt, dann vielleicht mit: 'a', 'b', 'c', 'd', 'e' | sortieren | Wählen Sie -skip 1 | Sortierung -desc | Wählen Sie -skip 1 –