1. ホーム
  2. スクリプト・コラム
  3. パワーシェル

タイプ別ソートのPowershell実装

2022-02-06 01:23:41

すべてのバージョンに適用されます。

Sort-Objectは、生データであればパイプラインを直接使用し、オブジェクト型であればソート属性を指定することで、ソートの問題をそれ自体で解決することができます:Sort-Objectを使用することで、ソートの問題を解決することができます。

コピーコード コードは以下の通りです。

# sorting primitive data
1,5,2,1,6,3,12,6 | Sort-Object -Unique
# sorting object data
Get-ChildItem -Path c:\windows | Sort-Object -Property name

Powershellは、異なるオブジェクトの種類を与えてソートの種類を自動的に選択することができますが、より多くのソートオプションが用意されています。

スクリプトブロックを追加するだけで、括弧内の$_をソートするオブジェクトとして表すことができ、これで特定の型を仮定することができます。

コピーコード コードは以下の通りです。

# sorting string as numbers
'1','5','3a','12','6' | Sort-Object -Property { $_ -as [int] }
# sorting IPv4 addresses as versions
'1.2.3.4', '10.1.2.3', '100.4.2.1', '2.3.4.5', '9.10.11.12' |
  Sort-Object -Property { [version] $_ }