Полезная информация распространяется на другие ответы здесь, но, я думаю, полезно иметь кратким резюме:
Всех линии, за исключением первых три
1..10 | Select-Object -skip 3
returns (one per line): 4 5 6 7 8 9 10
Всех линий, кроме последнего три
1..10 | Select-Object -skip 3 -last 10
returns (one per line): 1 2 3 4 5 6 7
То есть, вы можете сделать это с помощью встроенных команд PowerShell , но есть такая досада, когда нужно указать размер входящего.Простое решение, чтобы просто использовать константу больше, чем любой возможный вход и вам не нужно будет знать размер априори:
1..10 | Select-Object -skip 3 -last 10000000
returns (one per line): 1 2 3 4 5 6 7
уборщик синтаксис использовать как Кит Хилл предложил, командлет Скип-Object из PowerShell Community Extensions (Пропускать-Последняя функция в ответ Goyuix в выполняет то же самое, но с использованием PSCX избавляет вас от необходимости поддерживать код):
1..10 | Skip-Object -last 3
returns (one per line): 1 2 3 4 5 6 7
Первые три линии
1..10 | Select-Object –first 3
returns (one per line): 1 2 3
Последние три линии
1..10 | Select-Object –last 3
returns (one per line): 8 9 10
Средний четыре линии
(Это работает, потому что -skip
обрабатывается до -first
, независимо от порядка параметров в вызов.)
1..10 | Select-Object -skip 3 -first 4
returns (one per line): 4 5 6 7