2013年9月30日月曜日

WSH 名前付き引数の使い方

Windows系の仕事をしていると、ちょっとした事をスクリプトで処理するときにWSHを
使う。
 
使ってないと忘れるのでコードのサンプルを書いとく。
 
内容は「test」スクリプトに渡す引数「logname」「out」が
いずれも未定義か、いずれか未定義の場合異常終了とする。
 
 
<package>
  <job id="test">
  <runtime>
    <named name="logName"helpstring="ログ名"type="string"required="true" />
    <named name="out"helpstring="出力ファイル名"type="string"required="true" />
  </runtime>
  <script language="JScript">
   var namedArgs = WScript.Arguments.Named;
       //引数が無い、またはout,logNameいずれかが無い場合、異常終了
   if (namedArgs.length == 0 || !namedArgs.exists("out") || !namedArgs.exists("logName")) {
     WScript.Arguments.ShowUsage();
     WScript.Quit(1);
   }
   if(namedArgs("logName") != undefined){ WScript.echo('logName->' + namedArgs("logName") );
   if(namedArgs("out") != undefined){ WScript.echo('out->' + namedArgs("out") ); </job>
</package>
 

zipruby(Windows)のインストール

windowsへのziprubyのインストールは、gemからやるとうまくインストールできない。
Devkitでビルドしても「checking for zlib.h******************no」と怒られてインストールできない。
 
インストールができた時の手順。
1.Devkitをインストール

2.ziprubyをマニュアルダウンロード

  これ
  zipruby1.9-0.3.6-x86-mswin32.gem

3.gem install ダウンロードファイル
これ
gem install ファイルまでのパス\zipruby1.9-0.3.6-x86-mswin32.gem

Successfully installed zipruby1.9-0.3.6-x86-mswin32

GitHub

一応GitHubのアカウントがあるのでここにコードを公開していこうと思う。
https://github.com/maar4569

現在は、Ziprubyを使ったrubyのzip,encrypt用の小さなライブラリと、
JScript(仕事柄Windowsが多いもので。)で書いたXML操作の簡単なおまじないと
DOM操作のサンプルなどをアップしてます。


初回

とりあえずやってみようと思った事をやってみて、うまくいくか試そうと思う。

まずは自作で以前作ったGoogle Apps Scriptで作成したスケジュール作成アプリ。
UIを使って入力したスケジュールをGoogle Spread Sheet、Google CalendarやGoogle Tasksに登録し連携するもの。
仕事用に作ったかがかなり特化されているので、エッセンスを取り出してアップしていこうと思う。