当サイトの記事にはプロモーションが含まれています。

PowerShellのSort-Objectを使いこなす:初心者向け完全ガイド

パソコンパソコン・スマホ教室
スポンサーリンク

PowerShellの`Sort-Object`コマンドレットは、データを整理するための強力なツールです。例えば、ファイルを更新日時順に並べ替えたり、プロセスをメモリ使用量でソートしたりする際に役立ちます。しかし、初めて使う方にとっては、どこから始めればよいのか分からないかもしれません。今回は、初心者の方でも理解しやすいように、`Sort-Object`の基本から応用までを解説します。

スポンサーリンク

Sort-Objectとは?

Windowsのイメージ

Windowsのイメージ

`Sort-Object`は、PowerShellでオブジェクトを指定したプロパティに基づいて昇順または降順に並べ替えるコマンドレットです。例えば、ファイルを名前順や更新日時順に並べ替えることができます。

基本的な使い方

以下のコマンドで、現在のディレクトリ内のファイルを名前順に並べ替えることができます。

Get-ChildItem | Sort-Object

このコマンドでは、`Get-ChildItem`で取得したファイルを`Sort-Object`で並べ替えています。デフォルトでは、`Sort-Object`はオブジェクトの名前プロパティを基に昇順で並べ替えます。

降順で並べ替える

降順で並べ替えたい場合は、`-Descending`パラメータを使用します。

Get-ChildItem | Sort-Object -Property Length -Descending

このコマンドでは、ファイルのサイズ(`Length`プロパティ)を基に降順で並べ替えています。

複数のプロパティで並べ替える

複数のプロパティで並べ替えることも可能です。例えば、更新日時と名前の順で並べ替えたい場合は、以下のようにします。

Get-ChildItem | Sort-Object -Property LastWriteTime, Name

このコマンドでは、まず更新日時(`LastWriteTime`)で並べ替え、次に名前(`Name`)で並べ替えています。

ユニークな値を取得する

重複する値を排除してユニークな値だけを取得したい場合は、`-Unique`パラメータを使用します。

Get-Content "C:Testservers.txt" | Sort-Object -Unique

このコマンドでは、`servers.txt`ファイルの内容を読み込み、重複を排除して並べ替えています。

安定した並べ替え(Stable Sort)

PowerShell 7以降では、`-Stable`パラメータを使用することで、同じ値を持つオブジェクトの順序を保持したまま並べ替えることができます。

Get-ChildItem | Sort-Object -Property Length -Stable

このコマンドでは、ファイルのサイズを基に安定した並べ替えを行っています。

実際の活用例

最も最近更新されたファイルを取得する

以下のコマンドで、最も最近更新されたファイルを取得できます。

Get-ChildItem | Sort-Object -Property LastWriteTime -Descending | Select-Object -First 1

このコマンドでは、ファイルを更新日時で降順に並べ替え、最初の1件を取得しています。

プロセスをメモリ使用量で並べ替える

以下のコマンドで、メモリ使用量が多い順にプロセスを並べ替えることができます。

Get-Process | Sort-Object -Property WS -Descending | Select-Object -First 5

このコマンドでは、プロセスをワーキングセット(`WS`)で降順に並べ替え、上位5件を取得しています。

よくある質問や疑問

質問1Sort-Objectで昇順を指定する必要はありますか?

昇順はデフォルトの動作であるため、`-Ascending`パラメータを明示的に指定する必要はありません。

質問2Sort-Objectで並べ替えた結果を変数に保存できますか?

はい、並べ替えた結果を変数に保存することができます。

$sortedFiles = Get-ChildItem | Sort-Object -Property Length

質問3Sort-Objectで並べ替えた結果をファイルに保存できますか?

はい、並べ替えた結果をファイルに保存することができます。

Get-ChildItem | Sort-Object -Property Length | Out-File "C:TestsortedFiles.txt"

まとめ

`Sort-Object`は、PowerShellでデータを整理するための強力なツールです。基本的な使い方から応用までを理解することで、日常の作業を効率化することができます。ぜひ、さまざまなシナリオで活用してみてください。

他にも疑問やお悩み事があれば、お気軽にLINEからお声掛けください。

この記事を書いた人
この記事を書いた人

企業の情報システム部門で10年以上、PC・アカウント・社内ネットワーク・Microsoft 365/Google Workspace運用を担当。年間数百件の問い合わせ対応(PC不調、メール送受信、Excel/Word資料、Teams会議、スマホ連携など)を通じて、初心者がつまずくポイントを「再現→原因切り分け→最短解決」の手順に落とし込んできました

現場や身近で実際に起きたトラブルをベースに、手順だけでなく「なぜそうなるか」「失敗しやすい落とし穴」「安全な設定(セキュリティ)」まで含めて解説します。

相談窓口(問い合わせ/LINE等)を設け、記事で解決しないケースも個別にサポートしていますので「パソコンが急に動かなくなった」「スマホの設定がわからない」などの悩みは一人で抱え込まず、お気軽にご相談ください。

【お問い合わせは下記URLから】
https://m32006400n.xsrv.jp/inquiry-form/

【公式LINEは下記URLから】
https://lin.ee/t8TDjcj

uri uriをフォローする
スポンサーリンク
よかったらシェアしてね! /
uri uriをフォローする

コメント

タイトルとURLをコピーしました