※この記事は「2021年4月11日」に更新しました。
PowerShell(パワーシェル)講座です。
前回は、演算子について、紹介しました。
第4回目は、配列についてです。
環境は、Windows 10(64bit)、PowerShell 6.1.2 です。
配列とは
配列は、複数の箱(データ格納庫)が並んでいるようなイメージです。
以前、紹介した PHP講座でも配列を紹介しました。
PowerShell も配列が使えます。
配列を生成する方法はいくつかあります。
$a = 1, 2, 3
このとき、$a[0] の値は下記のようになります。
1
0 の部分をキーと言ったりします。
また、下記のように生成することもできます。
$a = @(1; 2; 3)
レンジ演算子を使った配列生成
配列の要素が増えてくると記述が面倒です。
そんなときに便利なのがレンジ演算子です。
$a = 1..10
このように書くと 1~10 まで一気に配列を生成してくれるのです。
ただし、始めと終わりは整数でなければいけません。
下記が実行結果です。
連想配列とは
連想配列は、先程のキーが数字であったのが、文字列になる配列のことです。
つまり、数字以外でキーを持つことができます。
$a = @(名前="ぱそた"; 性別="男")
このように書きます。
PSCustomObject でキャストした連想配列
カスタムオブジェクト(自作オブジェクト)をつくるときに便利です。
$a = [PSCustomObject]@{名前 = "ぱそた"; 性別 = "男"}, [PSCustomObject]@{名前 = "あどみん"; 性別 = "女"}
下記が実行結果です。
このように連想配列を利用して、簡単に自作オブジェクトをつくることができます。
連想配列と違って、順序が保証されます。
CSVファイルを出力するときなどに便利です。
最後に
いかがでしょうか。
配列の基礎に関しては、当サイトの PHP講座でも紹介したので、語ることはほとんどありません。
今回の記事のポイントは、カスタムオブジェクトをつくるときに連想配列を利用できるというところです。
前回の記事に紹介した、キャスト演算子と PSCustomObject という特殊な型を利用して、簡単に自作オブジェクトをつくることができます。
PowerShell は、コマンド(レット)が長かったり、見慣れない構文があったりします。
本を読むより、実際動かした方が理解が深まる気が個人的にはしました。
まだまだ勉強中ですが、がんばって進めていきます。
次回は、CSVデータ入出力についてです。
今回紹介した連想配列を利用したカスタムオブジェクトが役立ちます。