※この記事は「2023年4月21日」に更新しました。
今回は、変数とオブジェクトについて。
これに対して、コマンドプロンプトは文字列しか扱うことができません。
つまり、PowerShell の場合、変数には、文字列だけでなく様々な型が格納できるわけです。
- 基本情報技術者資格所有者(ソフト開発の国家資格)
- WordPress歴、10年以上
- パソコン販売歴、約5年
変数の扱い方
変数の確認
変数の一覧を確認するには、Get-Variable を使います。
Get-Variable
実行結果は、以下の通りです。
変数の定義
変数の定義は、下記のようになります。
$変数名=値
値の代入も行っています。
変数の値を削除
変数の値を削除する方法です。
$変数=$null
$null を代入することで変数の中身を空にすることができます。
変数の削除
変数本体を削除する方法です。
Remove-Variable を使います。
Remove-Variable 変数名
これで変数本体を削除することができます。
シェル変数
PowerShell(パワーシェル)には、元々組み込まれている変数がいくつかあります。
自動変数
PowerShell が自動で値を設定しているものを自動変数といいます。
変数名 | 内容 |
---|---|
$$ | 前のコマンドラインの最後のトークン |
$? | 最後に実行したコマンドの結果(成功か失敗か) |
$^ | 前のコマンドラインの最初のトークン |
$args | スクリプトや関数、スクリプトブロックの引数 |
$HOME | ユーザーのホームディレクトリ |
$PID | 現在の pwsh のプロセスID |
$PWD | 現在のパス |
まだまだたくさんあります。
ユーザー設定変数
シェル変数の中には、ユーザーが設定することで PowerShell の挙動を変更することができるものもあります。
変数名 | 内容 |
---|---|
ConfirmPreference | 危険度の高いコマンドレットや関数を実行する前に確認を求めるかどうか |
DebugPreference | デバッグでプロンプトを表示するかどうか |
ErrorActionPreference | 例外発生時に実行を止めるかどうか |
FormatEnumerationLimit | 表示されるアイテムの数 |
InformationPreference | インフォメーションストリームを表示するかどうか |
MaximumAliasCount | エイリアス数の上限値 |
MaximumDriveCount | ドライブ数の上限値 |
MaximumErrorCount | エラー履歴保存数の上限値 |
MaximumDriveCount | ドライブ数の上限値 |
MaximumFunctionCount | 関数の数の上限値 |
MaximumHistoryCount | 入力履歴保存数の上限値 |
MaximumVariableCount | 変数の最大値 |
OutputEncoding | 出力エンコーディング |
ProgressPreference | 進捗バーを表示するかどうか |
PSDefaultParameterValues | コマンドレットのデフォルトのパラメーター値 |
このユーザー設定変数もたくさんあります。
こういうものがある程度に理解しておきましょう。
変数とオブジェクト
PowerShell(パワーシェル)の変数は、オブジェクトとして扱われます。
例えば、以下のように変数を定義して値を代入します。
$a=10
次にすべてのオブジェクトが持っている GetTypeメソッドを使います。
$a.GetType()
これを実行すると、変数の型が Int32型ということがわかります。
今度は、文字列を別の変数に代入します。
$b="タカフミブログ"
Lengthプロパティを使って、文字列の長さを取得します。
$b.Length
これを実行すると、7 が返ってきます。
今までの実行結果は、以下の通りです。
最後に
今回は、PowerShell(パワーシェル)の変数について、解説しました。
オブジェクトを操作して、慣れていきましょう。