ここでは有用な情報が他の回答にも広がっていますが、簡潔な要約があると便利だと思います。
最初の3行を除くすべての行
1..10 | Select-Object -skip 3
returns (one per line): 4 5 6 7 8 9 10
最後の3行を除くすべての行
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
よりクリーンな構文は、Keith Hillが提案したように、PowerShell Community ExtensionsのSkip-Objectコマンドレットを使用することです(Goyuixの回答のSkip-Last関数は同等に機能しますが、PSCXを使用するとコードを維持する必要がなくなります)。
1..10 | Skip-Object -last 3
returns (one per line): 1 2 3 4 5 6 7
最初の3行
1..10 | Select-Object –first 3
returns (one per line): 1 2 3
最後の3行
1..10 | Select-Object –last 3
returns (one per line): 8 9 10
真ん中の4行
(これは、呼び出しのパラメーターの順序に関係なく、がの-skip
前に処理されるために機能します。)-first
1..10 | Select-Object -skip 3 -first 4
returns (one per line): 4 5 6 7