汎用的な処理はスクリプトファイルにしておきたい。(関数でも良いが)
適当に作っていくと後でわけがわからなくなるので、ある程度書式を決めておく。
一応こんなひな形を考えてみた、
| param( [string]$Path = ".\", [switch]${??} ) $comment = @' ##################################################### 指定されたフォルダーのサブフォルダーのディスク容量を表示する (MGet-FolderSizes.ps1) param( [string]$Path = "C:\", [switch]${??} ) 例: # MGet-FolderSizes.ps1 -Path "C:\Windows" ##################################################### '@ Set-PSDebug -Strict if(${??}) {$comment;return} |
パラメータの受け取り方は何種類かあるが、Paramステートメントを使うことにする。(これは先頭に書く必要があるようだ)
次に、簡単な機能とパラメータ及び使用例をコメントとして入れておく。
これは未設定変数の参照をエラーとする定義。タイプミスを早めに見つけられるので入れておきたい。
| if(${??}) {$comment;return} |
これはヘルプ表示用。
コマンドレット -? でヘルプ表示されるのをまねている。
$?としたいところだが、これは既に自動変数で使われているので$??としてみた。
コマンドレット -?? でもヒットしてしまうが実害はないだろう。
ただし、?は変数に使えない文字なので{}で囲んでいる。
ここでは単純にコメントをそのまま出力している。
もっと正当な書き方があるのかもしれないがこれでも十分だろう。