So-net無料ブログ作成
検索選択
QLOOKアクセス解析

スクリプトファイルの場所 2 [PowerShell]

paramで使うには

12月21日に書いた常套句
$myd = & { Split-Path $myInvocation.ScriptName }
は、基本的にはどこでも使えるのですが、スクリプトファイルの引数定義の場面で使うには注意が必要です。
param を使って定義する引数の省略時の値にファイルのパスを入れたい場合に、
$myd = & { Split-Path $myInvocation.ScriptName }
param
(
  $file1 = (Join-Path $myd 'hogehoge.xml')
)
などと書きたいのですが param はスクリプトファイル内の最初の実行可能行でなくてはいけないので、
このように記述することはできません。

したがって、
param
(
  $file1 = (Join-Path (& { Split-Path $myInvocation.ScriptName }) 'hogehoge.xml')
)

のようにその場に書く必要があります。

この長さなら一行に書くものとしてなんとか許せる範囲かなと思いつつ、
なんとかもっといい方法はないものかとも・・・
タグ:powershell
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

メッセージを送る
人気ブログランキングへ
 

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。