2012-07-30 WSH(3)〜WScriptのプロパティ〜
WSH(Windows Script Host)の第3回。今日は引数の扱いについて記録しておく。
引数の処理にはWshArgumentsオブジェクトを使うのが基本である。Argumentsオブジェクトは名前付き名前なしに関係なく、指定した順番で引数を得られる。名前付き引数の処理にはWshNamedオブジェクトを、名前なし引数の処理にはWshUnnamedオブジェクトを使う。今回は前回定めた仕様に従い、名前付き引数を扱う。
上記の通り、名前付き引数の処理にはWshNamedオブジェクトを使う。WshNamedオブジェクトにアクセスするためには、WScriptオブジェクトのArgumentsプロパティでWshArgumentsオブジェクトを得て、WshArgumentsオブジェクトのNamedプロパティでWshNamedオブジェクトを得る。日本語にすると分かりづらいが、コードにすると単純だ。
WScript.Arguments.Named
これだけのことだ。それぞれのオブジェクトが持つプロパティやメソッドについては、WSHのオブジェクトのリファレンスを参照すること。
説明が遅れたが、WScriptオブジェクトはWSHにおけるルートオブジェクトだ。インスタンス化なしに使える。出力や、オブジェクトの生成や、終了や、スクリプト自体の情報など、さまざまな用途で使う。引数処理のついでにWScriptオブジェクトのプロパティを一部出力してみた。
C:\Users\user\Dropbox>cscript //Nologo //Job:RotateBackup rotate-backup.wsf /srcfile:target.zip /dstdir:C:\Users\user\backup
Hello, WSH!
srcfile:target.zip
dstdir :C:\Users\user\backup
WScript properties
WScript.Name :Windows Script Host
WScript.Version :5.8
WScript.Path :C:\windows\system32
WScript.FullName :C:\windows\system32\cscript.exe
WScript.Interactive :True
WScript.ScriptFullName:C:\Users\user\Dropbox\rotate-backup.wsf
WScript.ScriptName :rotate-backup.wsf
今日のところはここまで。はやくきれいなスクリプトを書けるようになれるといいなあ。楽しみながらやっていこう。
21 min.