6.4.4 スクリプトの設定方法について
操作対象の機器のOSに対応した部品を作成するために,スクリプトはOSごとに設定します。スクリプトに定義できるのは,操作対象の機器にあり,その機器で実行できるスクリプトまたはコマンドです。
スクリプトのファイルは,いったん登録したあとでも登録し直すことができます。ファイルを登録し直すと,既存のファイルは上書きされます。
スクリプトの設定方法による差異
スクリプトの設定方法には,作成済みのスクリプトを添付する方法と,スクリプトを直接入力する方法の2種類があります。それぞれの差異を次に示します。
- [添付]を選択
zip形式にすることで,複数ファイルや複数フォルダで構成されるスクリプトファイルを登録できます。
ただし,拡張子がzipの圧縮ファイルは,部品をJP1/AOサーバに保存するときにファイル名が変更されます。ファイル名は,OSごとに「windows.zip」または「linux.zip」に変更されます。[添付]を選択して登録したファイルは,JP1/AOをWebブラウザーで操作する端末にダウンロードできます。スクリプトを直接入力した場合は,定義したスクリプトファイルをダウンロードできません。
- [直接入力]を選択
操作対象の機器で実行するスクリプトの内容を[リモートコマンド編集]ダイアログボックスで直接入力します。スクリプトに定義できるのは,操作対象の機器にあり,その機器で実行できるスクリプトまたはコマンドです。この場合,定義できるスクリプトファイルは1ファイルだけです。保存されるスクリプトの文字セットや改行コードは,操作対象の機器のOSに従って固定となります。
そのため,複数ファイルで構成されるスクリプトファイルを登録したい場合や,任意の文字セットや改行コードを設定したい場合は,[添付]を選択してください。
[スクリプト設定]での設定内容による,ファイルの登録方法,設定される文字セットおよび改行コードの差異を次の表に示します。
項目 |
[添付]を選択 |
[直接入力]を選択 |
||
---|---|---|---|---|
Windows |
Linux |
Windows |
Linux |
|
単一ファイルの登録 |
登録できる |
登録できる |
||
複数ファイルの登録 |
登録できる |
登録できない |
||
保存されるスクリプトの文字セット |
登録ファイルの文字セットが設定される |
JP1/AOサーバのOSのデフォルトの文字セット |
UTF-8 |
|
保存されるスクリプトの改行コード |
登録ファイルの改行コードが設定される |
CR+LF |
LF |
スクリプトファイル作成時の注意
スクリプトファイルを作成するときは,次の点に注意してください。
スクリプトファイルにはASCII文字を使用してください。次の文字は使用できません。
制御文字('\u0000'~'\u001F' または'\u007F'~'\u009F')
「?」「*」「"」「>」「<」「|」「:」
ファイルパスおよびファイル名にマルチバイト文字を使用できません。
部品として実行するスクリプトの戻り値に使用できる値は,0~63の範囲です。
部品の標準出力および標準エラー出力が,100KB未満となるように部品およびサービステンプレートを設計する必要があります。部品の標準出力および標準エラー出力が100KBを超えると,その時点でスクリプトが強制終了され,部品はエラーで終了します。このときのスクリプトの実行結果は保証されません。
スクリプト実行時のロケールは,操作対象の機器のOSごとに異なります。操作対象の機器に設定されるロケールについては,「6.1.6 部品実行時に設定される操作対象の機器のロケールについて」を参照してください。
-
ユーザーに入力を求める対話式コマンドおよびスクリプト,GUI表示などにより自動的に終了しないコマンドは実行できません。
- 接続先ホストにプロトコルSSHで接続していて,汎用コマンド実行部品がKNAE08107-Eメッセージを出力し,失敗する場合,実行しているコマンドが標準入力をクリアしている可能性があります。その場合、標準入力をクリアしているコマンドを特定し,標準入力のクリアが行われないようにしてください。
標準入力のクリアを防ぐ方法の例としてはコマンドに「< /dev/null」を指定する方法があります。
- ヒント
コマンドおよびスクリプトを実行する際の戻り値の設定については,「6.4.9 コンテンツ部品の戻り値について」を参照してください。