バージョンチェックの自動実行(コマンドライン)
概要
MyJVN バージョンチェッカを利用して、複数のPCやサーバを効率よくチェックするために、コマンドラインにより利用する方法を説明します。
コマンドラインを利用することにより、OSが提供するタスクスケジューラやcron等の自動実行機能を用いて自動的にチェックを実行することができます。
利用方法
(ステップ1)証明書の準備について
MyJVN バージョンチェッカをダウンロードし実行する際には、ツールの成りすましを防ぐために、Javaアプリケーションの署名のチェックをする必要があります。署名のチェックをするためには、Java実行環境(JRE)にIPAが発行するX.509証明書を取り込む必要があります。GUI環境が利用できる場合には、最初に以下の画面が表示されます。名前が「MyJVNチェックアドバイザ」、発行者が「Information-technology Promotion Agency, Japan」であることを確認してから [実行] ボタンをクリックしてください。
GUI環境を利用できない場合は、(解説) コマンドラインによるIPA証明書のインポート方法を参照ください。

図1 GUIによる証明書の取り込み
(ステップ2)手動による動作確認
自動実行を行うまえに、コマンドラインから手動実行を行い、チェックができることを確認ください。
はじめに、チェック結果出力先を決定します。チェック結果出力先のディレクトリ(フォルダ)が存在しない場合、エラー発生の際の情報を出力することができなくなりますので、忘れずに用意するようにしてください。
次に、以下の形式のコマンドを実行します。赤色で記した部分は、実行する環境に合わせて変更してください。
パラメタの詳細については、パラメタ一覧を参照してください。
javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=「利用OSのCPE名」&benchmarkID=「ベンチマークID」&file=「チェック結果出力先」"
チェック対象OSと実行コマンド
| チェック対象OS | コマンド |
|---|---|
| Windows XP | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows-nt:xp:-:~-~-~-~-~:-&benchmarkID=winxp-32-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows Vista | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows-nt:vista:-:~-~-~-~-~:-&benchmarkID=winvista-32-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows 7(32bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows_7:-:-:~-~-~-~x32~:-&benchmarkID=win7-32-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows 7(64bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows_7:-:-:~-~-~-~x64~:-&benchmarkID=win7-64-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows 8(32bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows_8:-:-:~-~-~-~x32~:-&benchmarkID=win8-32-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows 8(64bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows_8:-:-:~-~-~-~x64~:-&benchmarkID=win8-64-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows Server 2003 R2(32bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows-nt:2003:-:~-~-~-~x32~:-&benchmarkID=Win2003-32-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows Server 2003 R2(64bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows-nt:2003:-:~-~-~-~x64~:-&benchmarkID=Win2003-64-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows Server 2008(32bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows:server_2008:-:~-~-~-~x32~:-&benchmarkID=Win2008-32-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows Server 2008 R2(64bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows:server_2008:-:~-~-~-~x64~:-&benchmarkID=Win2008-64-vc&file=C:\sampledirectory\samplefile.csv" |
| Windows Server 2012(64bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows:server_2012:-:~-~-~-~x64~:-&benchmarkID=Win2012-64-vc&file=C:\sampledirectory\samplefile.csv" |
| CentOS 5(32bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:centos:centos:5:-:~-~-~-~-~:-&benchmarkID=centos5-32-vc&file=/var/tmp/samplefile.csv" |
| Red Hat Enterprise Linux 5(32bit版) | javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:redhat:enterprise_linux:-:-:~-~-~-~-~:-&benchmarkID=rhel5-32-vc&file=/var/tmp/samplefile.csv" |
MyJVN バージョンチェッカがチェックを実行すると、起動時のfileパラメタで指定したチェック結果出力先に結果ファイルが出力されます。結果ファイル出力先にディレクトリ(フォルダ)を指定した場合は、「ホスト名_日付.csv」という結果ファイルが作成されます。
結果ファイルは、CSV形式(文字コードはシフトJIS)になっています。テキストエディタや表計算ソフト等で内容を確認することができます。
結果ファイルの内容については、チェック結果ファイルの書式を参照してください。
MyJVN バージョンチェッカの実行が失敗した場合、結果ファイルは出力されません。(解説) コマンドライン動作確認時のエラーと対処方法を参照して、実行に失敗した原因を対策してください。
コマンド実行が成功した例(Windows 7の場合)

結果ファイル例(表計算ソフト(Microsoft Excel)で開いた例、詳細情報出力なしの場合)

(ステップ3)スクリプトによる実行
自動実行を行うには、スクリプトファイルを作成し、設定する必要があります。
| (1) | テキストエディタを立ち上げ、スクリプトファイル(バッチファイル)を作成する。 |
| (2) | コマンドを記載後、Windows系の場合は、保存するファイルの拡張子を「.bat」で保存し、Linux系の場合は、必要な実行権限を付与しておく。 |
| (3) | OSが提供する、タスクスケジューラ、アクティブディレクトリ(以上、Windows系)、cron(Linux系)などの自動実行機能に登録する。 |
MyJVN バージョンチェッカの実行が失敗した場合、結果ファイルは出力されません。(解説) コマンドライン実行時のエラーログファイルと対処方法を参照して、実行に失敗した原因を対策してください。
スクリプトファイル例
以下は、Windows 7でチェックを実行する場合のスクリプトファイル例です。|
@echo off javaws "http://jvndb.jvn.jp/apis/myjvn/app/checkadvisercui?platform=cpe:/o:microsoft:windows_7:-:-:~-~-~-~x32~:-&benchmarkID=win7-32-vc&file=c:\sampledirectory\samplefile.csv" |
結果の集計例:
出力される結果ファイルは、「ホスト名+日付」がファイル名に付与されるため、異なるPC(サーバ)で実行したファイル名が重なることはありません。以下のスクリプトを参考にすることにより、複数の結果ファイルを一つにまとめることができます。
共有のファイルサーバを利用できる場合は、結果出力先を指定するパラメタ「file=」に、共有サーバのディレクトリを指定することにより、複数台のPC/サーバーのチェック結果出力ファイルを一括して集めることもできます。
複数の結果ファイルをまとめるスクリプト例
以下は、上記スクリプトファイル例を実行した際に結果ファイルが格納される「sampledirectory」内の、複数のチェック結果ファイルをマージするスクリプト例です。|
Dim objFS,strResult,intCount,objFile,objOutputTextFile,objText Set objFS = CreateObject("Scripting.FileSystemObject") intCount = 0 For Each objFile In objFS.GetFolder(".\sampledirectory").Files Set objText = objFile.OpenAsTextStream(1) If Len(strResult) > 0 Then If objText.AtEndOfStream Then Exit For Else objText.SkipLine End If If Not objText.AtEndOfStream Then strResult = strResult & objText.ReadAll objText.Close intCount = intCount + 1 Next If intCount > 0 Then If Not objFS.FolderExists(".\merge") Then objFS.CreateFolder(".\merge") Set objOutputTextFile = objFS.CreateTextFile(".\merge\result.csv") objOutputTextFile.Write(strResult) objOutputTextFile.Close End If |
(ステップ4)チェック結果が「×」の場合の対応
チェック結果が「×」の場合は、それぞれの対象PCまたはサーバでご利用されている製品が最新で無い為、バージョンアップをご検討ください。
バージョンアップ方法は、ソフトウェア製品により異なります。以下をクリックして対象ソフトウェア製品別のバージョンアップ情報を確認し、バージョンアップを行ってください。
パラメタ一覧
| パラメタ名 | 内容と説明 | 必須 | デフォルト[1] |
|---|---|---|---|
| platform | 対象OSをCPE名で指定する。
|
○ | − |
| file | MyJVN チェック・アドバイザのチェック結果を出力するファイル名(ディレクトリ指定可)を指定する。 ディレクトリのみを指定した場合は、「(ディレクトリ)\ホスト名+日付」というファイル名で出力する。 (例:(/usr/local/)C00265501_20101005.csv) ディレクトリのみ指定する場合、パラメタの終端はディレクトリ区切り文字(”/”(Linux)、”\”(Windows))とすること。ただし、Windowsの場合、fileパラメタをコマンドラインの最後に記述する際には、直後の "(ダブルクオート)をエスケープしないように、”\\”と記載する必要がある。 また、出力先としてネットワークドライブを指定する場合は、事前にドライブ割り当て(Redhat、CentOSの場合は、ドライブマウント)をしておく必要がある。UNC(Universal Naming Convention)パスは使用できない。 |
○ | − |
| benchmarkID | 動的及び静的チェックを実施するベンチマークIDを指定する。 提示されたベンチマークIDを指定すること。 |
○ | IPAで設定したベンチマークID |
| file_type | 出力するファイルの種別を指定する。
|
− | csv |
| detailinfo | CSV形式のチェック結果ファイルに、詳細情報を出力するか否かを指定する。
|
− | no |
- 1)「デフォルト」は、該当パラメタに指定がない場合 (パラメタ自体もしくはパラメタ値が未指定の場合)に自動的に設定する値です。
チェック結果ファイルの書式
MyJVN バージョンチェッカの結果ファイルの形式を図2に示します。結果ファイルは、1行目がヘッダ行、2行目がチェック結果を表します。表の一番右側には、MyJVN バージョンチェッカの起動に関する情報が格納されています。

図2 チェック結果ファイルの形式
ホスト名: 「ホスト名」と表示されます。
「チェックを行ったPC名」:チェックを実行したPC(もしくはサーバ)の名称
「ソフトウェア製品1」:チェック対象のソフトウェア製品名
「ソフトウェア製品1」のチェック結果:ソフトウェア製品に対するチェック結果(「○」「×」「−」のいずれかで表示)
「ソフトウェア製品1」付加情報:パラメタに"detailinfo=yes"が指定されたときに表示されます。
「ソフトウェア製品1」のチェック結果詳細:"detailinfo=yes"を指定していない場合は空欄になります。 パラメタに"detailinfo=yes"が指定されたときにチェック結果の詳細が表示されます。
"detailinfo=yes"を指定していない場合は空欄になります。 |
チェック結果の意味
| チェック結果 | 意味 |
|---|---|
| ○ 最新のバージョンです | インストールされているソフトウェア製品は IPA が確認している最新のバージョンであることを示しています。 |
| × 最新のバージョンではありません | インストールされているソフトウェア製品は IPA が確認している最新のバージョンでないことを示しています。 |
| ― インストールされていないか、対象外のバージョンです | リストアップされているソフトウェア製品がインストールされていないか、古いバージョンのため、チェック対象外となっていることを示しています。 |
よくある質問と答え(FAQ)
MyJVN バージョンチェッカのよくある質問と答えについては、以下をクリックしてFAQの一覧ページにてご確認ください。
更新履歴
2013年02月28日 Windows Server 2012 に関する記載を追加. 2012年11月01日 Windows 8 に関する記載を追加. 2011年11月29日 新規.



