JP1 Version 9

JP1/Advanced Shell

解説・手引・文法・操作書

3020-3-S35-30


目  次

前書き
変更内容
はじめに

1. JP1/Advanced Shellの概要
1.1 JP1/Advanced Shellの目的
1.1.1 バッチ業務資産の継承
1.1.2 バッチ業務構築のスピードアップ
1.1.3 バッチ業務の運用性・保守性の向上
1.2 業務への応用例
1.3 システムの全体構成
1.4 処理の流れ
1.5 機能概要
1.5.1 実行環境で利用する機能
1.5.2 開発環境で利用する機能

2. JP1/Advanced Shellを利用するための準備
2.1 プログラムのインストール先ディレクトリ
2.1.1 インストール先フォルダ【Windows限定】
2.1.2 インストール先ディレクトリ【UNIX限定】
2.2 プログラムの種類
2.3 前提条件
2.3.1 システム構成
2.3.2 前提プログラム
2.3.3 関連プログラム
2.3.4 JP1/Advanced Shellで使用するファイル
2.3.5 JP1/Advanced Shellを使用するときのエンコーディング
2.3.6 ローカルタイムの設定
2.3.7 環境情報の設定での注意事項
2.4 インストール【Windows限定】
2.4.1 JP1/Advanced Shellをインストールする【Windows限定】
2.4.2 JP1/Advanced Shellをアンインストールする【Windows限定】
2.4.3 JP1/Advanced Shell - Custom Jobをインストールする【Windows限定】
2.4.4 JP1/Advanced Shell - Custom Jobをアンインストールする【Windows限定】
2.5 インストール【UNIX限定】
2.5.1 JP1/Advanced Shellをインストールする【UNIX限定】
2.5.2 JP1/Advanced Shellをアンインストールする【UNIX限定】
2.5.3 バージョン情報を表示する【UNIX限定】
2.6 JP1/Advanced Shellの環境情報を設定する
2.6.1 環境ファイルを設定する
2.6.2 パス名を変換する
2.6.3 ファイルの入出力時にファイルパスを変換する【Windows,Linux限定】
2.6.4 コマンド実行時に引数を変換する【Windows,Linux限定】
2.6.5 子孫ジョブとして起動するファイルを定義する【Windows,Linux限定】
2.6.6 UNIX互換コマンドを使用する
2.6.7 サポートしていない条件式を実行した場合の動作を定義する【Windows限定】
2.6.8 システム実行ログを出力する
2.6.9 スプールを定義する
2.6.10 トレースを定義する
2.6.11 スクリプト拡張コマンドの終了コードを定義する
2.6.12 複数の環境で共用する
2.6.13 バッチジョブの実行時にカバレージ情報を採取するオプションを指定しなくても有効にする
2.6.14 UNIXのジョブ定義スクリプトからWindowsのジョブ定義スクリプトに移行する
2.6.15 シェル変数ENVを読み込む
2.6.16 JP1環境を確認する【UNIX限定】
2.6.17 シェルを設定する【UNIX限定】
2.6.18 JP1/Advanced Shellで必要なディレクトリとファイルを作成する
2.6.19 JP1/AJS環境を設定する
2.7 JP1/AJS - Viewでカスタムジョブを登録する
2.8 ジョブネットを定義して実行する
2.9 HTMLマニュアルを組み込む

3. バッチジョブの実行
3.1 利用者の役割
3.1.1 システム管理者
3.1.2 一般ユーザー
3.2 UNIX互換コマンドの使用方法
3.3 バッチジョブの実行方法
3.3.1 ジョブとジョブステップ
3.3.2 バッチジョブの実行方法の種類
3.3.3 ジョブ定義スクリプトを子孫ジョブとして実行する
3.4 バッチジョブを起動する
3.4.1 実行環境からJP1/AJSを使用してジョブを起動する
3.4.2 実行環境からコマンドでバッチジョブを起動する
3.4.3 実行環境でバッチジョブをデバッグする【UNIX限定】
3.5 ジョブ定義スクリプトを解析して実行する
3.6 スプールのディレクトリ
3.7 スプールジョブを削除する
3.8 カバレージ情報を取得する
3.8.1 カバレージ情報の概要
3.8.2 カバレージ情報の管理
3.8.3 カバレージ情報の蓄積
3.8.4 カバレージ情報の表示
3.8.5 カバレージ情報のマージ
3.8.6 カバレージ採取の一括有効化機能
3.9 ジョブを強制終了する
3.9.1 ジョブの強制終了の方法
3.9.2 シグナル受信時の動作【UNIX限定】
3.9.3 強制終了時のジョブの動作【Windows限定】

4. エディタの操作
4.1 JP1/Advanced Shell - Developerの起動と終了【Windows限定】
4.1.1 JP1/Advanced Shell - Developerの起動
4.1.2 JP1/Advanced Shell - Developerの終了
4.2 JP1/Advanced Shellエディタの状態【Windows限定】
4.2.1 編集モード
4.2.2 デバッグモード
4.3 JP1/Advanced Shellエディタの操作【Windows限定】
4.3.1 JP1/Advanced Shellエディタウィンドウ
4.3.2 JP1/Advanced Shellエディタウィンドウのメニュー
4.3.3 JP1/Advanced Shellエディタウィンドウでのマウスとキーの操作
4.4 新規にジョブ定義スクリプトを作成する【Windows限定】
4.4.1 ジョブ定義スクリプトを新規に作成する
4.4.2 エディタの動作環境を設定する
4.4.3 ジョブ定義スクリプトの実行環境を設定する
4.4.4 文法をチェックする
4.4.5 文字列を検索および置換する
4.4.6 デバッグをする
4.4.7 カバレージ情報を表示する
4.5 既存のジョブ定義スクリプトを編集する【Windows限定】
4.6 ジョブ定義スクリプトを保存する【Windows限定】
4.7 JP1/Advanced Shellエディタウィンドウの画面の詳細【Windows限定】
4.7.1 オプション(書式)ダイアログボックス
4.7.2 オプション(色)ダイアログボックス
4.7.3 実行環境の設定ダイアログボックス
4.7.4 エラーウィンドウ
4.7.5 検索ダイアログボックス
4.7.6 ウォッチウィンドウ
4.7.7 変数の追加ダイアログボックス
4.7.8 値の更新ダイアログボックス
4.7.9 コンソール

5. ジョブ定義スクリプトの文法
5.1 ジョブ定義スクリプトを構成する基本要素
5.1.1 予約語
5.1.2 変数
5.1.3 配列
5.1.4 関数
5.1.5 メタキャラクタ
5.1.6 別プロセスでの実行【UNIX限定】
5.1.7 パターンマッチング
5.1.8 スクリプト拡張コマンドの実行
5.1.9 外部コマンドの実行
5.1.10 ジョブ定義スクリプトの実行
5.1.11 入力行の上限
5.2 条件判定
5.2.1 制御文
5.2.2 条件式
5.3 算術演算
5.3.1 算術演算子
5.3.2 増分・減分演算子
5.3.3 ビットごとの論理演算子
5.3.4 代入演算子
5.4 条件判定と算術演算の優先順位
5.5 シェル変数
5.5.1 設定および使用できるシェル変数
5.5.2 使用できないシェル変数
5.6 ジョブステップ終了コードにシェル変数を使用する
5.7 シェルオプション
5.7.1 setコマンドで設定する場合
5.7.2 adshexecコマンドで設定する場合
5.8 ジョブ情報の環境変数
5.9 ジョブ,ジョブステップおよびコマンドを定義する
5.9.1 ジョブ名を宣言する
5.9.2 ジョブの打ち切り条件を定義する
5.9.3 ジョブステップを定義する
5.9.4 常に正常終了するコマンドを定義する
5.9.5 パス名を扱うシェル変数を定義する
5.9.6 実行中のジョブ定義スクリプトから外部のジョブ定義スクリプトファイルを呼び出す
5.9.7 スクリプト拡張コマンドの終了コードとエラー発生時の動作
5.9.8 ジョブ,ジョブステップおよびコマンドの終了コード
5.9.9 シェル標準コマンドによるジョブの中断
5.9.10 ジョブ実行中にエラーが発生した場合の動作
5.9.11 コマンド実行結果の出力に関する注意事項
5.10 ファイルの割り当ておよび後処理をする
5.10.1 通常ファイルの割り当ておよび後処理をする
5.10.2 一時ファイルの割り当ておよび後処理をする
5.10.3 プログラム出力データファイルの割り当てをする
5.11 ジョブ定義スクリプトファイルの記述例

6. ジョブ定義スクリプトのデバッグ
6.1 デバッガとは
6.1.1 GUIでのデバッグ【Windows限定】
6.1.2 CUIでのデバッグ【UNIX限定】
6.1.3 デバッガのコマンド一覧【UNIX限定】
6.1.4 GUIデバッガの機能一覧【Windows限定】
6.1.5 ジョブ定義スクリプトの構成要素に対する停止可否
6.2 CUIのデバッガ【UNIX限定】
6.2.1 デバッガを終了する(quitコマンド)
6.2.2 ジョブ定義スクリプトを実行する(runコマンド)
6.2.3 ジョブ定義スクリプトを終了する(killコマンド)
6.2.4 ブレークポイントを設定する(breakコマンド)
6.2.5 ウォッチポイントを設定する(watchコマンド)
6.2.6 ブレークポイント・ウォッチポイントを削除する(deleteコマンド)
6.2.7 ジョブ定義スクリプトの実行を再開するコマンド
6.2.8 逐次実行をする(stepコマンド,nextコマンド)
6.2.9 継続実行をする(continueコマンド)
6.2.10 関数を実行する(finishコマンド)
6.2.11 関数を終了する(returnコマンド)
6.2.12 シグナルを送信する(signalコマンド)
6.2.13 ジョブ定義スクリプトの情報を表示する(infoコマンド)
6.2.14 ブレークポイント・ウォッチポイントの情報を表示する(info breakpointsコマンド)
6.2.15 カバレージ情報を表示する(info coverageコマンド)
6.2.16 関数情報を表示する(info functionsコマンド)
6.2.17 ジョブステップ情報を表示する(info jobstepsコマンド)
6.2.18 シグナル情報を表示する(info signalsコマンド)
6.2.19 シェル変数情報を表示する(info variablesコマンド)
6.2.20 変数の値を設定する(setコマンド)
6.2.21 変数の値を表示する(printコマンド)
6.2.22 バックトレースを表示する(whereコマンド)
6.2.23 ソースファイルを表示する(listコマンド)
6.2.24 ディレクトリを移動する(cdコマンド)
6.2.25 ログインシェルを起動する(execコマンド)
6.2.26 ヘルプを表示する(helpコマンド)

7. 環境ファイルで設定するパラメーターとコマンド
7.1 パラメーターとコマンドの記述形式
7.1.1 パラメーターの記述形式
7.1.2 コマンドの記述形式
7.2 パラメーターとコマンドの一覧
7.2.1 パラメーターの一覧
7.2.2 コマンドの一覧
7.3 環境設定パラメーター
ADSHCMD_RC_ERRORパラメーター(スクリプト拡張コマンド失敗時の終了コードを定義する)
ADSHCMD_RC_SUCCESSパラメーター(スクリプト拡張コマンド成功時の終了コードを定義する)
ASC_FILEパラメーター(蓄積ファイル名の生成規則を定義する)
BATCH_CVRパラメーター(カバレージ採取の一括有効化機能を有効にする)
CHILDJOB_SHEBANGパラメーター(子孫ジョブとして実行するジョブ定義スクリプトファイルの実行プログラムパスを定義する)【Windows,Linux限定】
COMMAND_CONV_ARGパラメーター(コマンド実行時にジョブ定義スクリプト中の引数を変換する規則を定義する)【Windows,Linux限定】
KSH_ENV_READパラメーター(シェル変数ENVを読み込むかどうかを定義する)
LOG_DIRパラメーター(システム実行ログ出力ディレクトリのパス名を定義する)
LOG_FILE_CNTパラメーター(システム実行ログをバックアップする面数を定義する)
LOG_FILE_SIZEパラメーター(システム実行ログを出力するファイルサイズを定義する)
OUTPUT_STDOUTパラメーター(ルートジョブの出力先を定義する)【Windows,Linux限定】
PATH_CONVパラメーター(絶対パスのパス名を変換する規則を定義する)
PATH_CONV_ACCESSパラメーター(ファイルの入出力時にジョブ定義スクリプト中のファイルパス名を変換する規則を定義する)【Windows,Linux限定】
PATH_CONV_ENABLEパラメーター(パス変換機能を有効にする)
SPOOL_DIRパラメーター(スプールディレクトリのパス名を定義する)
TEMP_FILE_DIRパラメーター(一時ファイルディレクトリのパス名を定義する)
TRACE_DIRパラメーター(トレースを出力するディレクトリのパス名を定義する)
TRACE_FILE_CNTパラメーター(トレース面数を定義する)
TRACE_FILE_SIZEパラメーター(トレースファイルサイズを定義する)
TRACE_LEVELパラメーター(トレース出力レベルを定義する)
UNSUPPORT_TESTパラメーター(サポートしていない条件式の実行時の動作を定義する)【Windows限定】
7.4 環境設定コマンド
exportコマンド(環境変数を定義する)

8. 運用時に使用するコマンド
8.1 コマンドの記述形式
8.1.1 ファイルのパス名
8.2 コマンドの一覧
8.3 シェル運用コマンド
adshcvmergコマンド(カバレージ情報をマージする)
adshcvshowコマンド(カバレージ情報を表示する)
adshexecコマンド(バッチジョブを実行する)
adshhkコマンド(スプールジョブを削除する)
8.4 UNIX互換コマンド
awkコマンド(テキストの加工やパターン処理をする)
catコマンド(ファイルの内容を標準出力に出力する)
cmpコマンド(バイナリファイルの内容を比較する)
cpコマンド(ファイルまたはディレクトリをコピーする)
cutコマンド(各行の選択範囲を標準出力に表示する)
dateコマンド(システムの日付と時刻を表示する)
diffコマンド(2つのファイルや標準入力を比較する)
exprコマンド(式を評価する)
findコマンド(ディレクトリ内のファイルを検索する)
grepコマンド(ファイル内の文字を検索する)
headコマンド(ファイルの最初の部分を表示する)
hostnameコマンド(ホスト名を表示する)
lsコマンド(ファイルまたはディレクトリの内容を表示する)
mkdirコマンド(ディレクトリを作成する)
mvコマンド(ファイルまたはディレクトリを移動する)
rmコマンド(ファイルまたはディレクトリを削除する)
rmdirコマンド(空のディレクトリを削除する)
sedコマンド(テキスト中の文字列を置換する)
sleepコマンド(指定された時間だけ停止する)
sortコマンド(テキストファイルをソートする)
splitコマンド(ファイルを分割する)
tailコマンド(ファイルの最後の部分を表示する)
unameコマンド(OSまたはハードウェアの情報を表示する)
uniqコマンド(ソートされたファイルから重複した行を削除する)
wcコマンド(ファイルのバイト,行,文字および単語をカウントする)

9. ジョブ定義スクリプトのコマンドおよび制御文
9.1 コマンドおよび制御文の記述形式
9.1.1 シェル標準コマンドの記述形式
9.1.2 スクリプト拡張コマンドの記述形式
9.1.3 スクリプト制御文の記述形式
9.1.4 スクリプト予約語コマンドの記述形式
9.2 コマンドおよび制御文の一覧
9.2.1 シェル標準コマンドの一覧
9.2.2 スクリプト拡張コマンドの一覧
9.2.3 スクリプト制御文の一覧
9.2.4 スクリプト予約語コマンドの一覧
9.3 シェル標準コマンド
.コマンド(シェルスクリプトを実行する)
:コマンド(引数を展開する)
aliasコマンド(エイリアスを定義する)
breakコマンド(繰り返し処理を抜ける)
builtinコマンド(組み込みコマンドを実行する)
cdコマンド(カレントディレクトリを移動する)
commandコマンド(コマンドを実行する)
continueコマンド(繰り返し処理を中断して繰り返し処理の先頭に戻る)
echoコマンド(引数で指定した内容を標準出力に出力する)
evalコマンド(引数を1つにまとめてコマンドとして実行する)
execコマンド(コマンドを実行して終了する)
exitコマンド(シェルを終了する)
exportコマンド(シェル変数をエクスポートする)
falseコマンド(終了コード1を返す)
getoptsコマンド(引数を解析する)
killコマンド(シグナルを送信する)
letコマンド(数値計算を行って評価する)
printコマンド(標準出力に出力する)
pwdコマンド(カレントディレクトリのパスを出力する)
readコマンド(標準入力から読み込んで変数に格納する)
readonlyコマンド(変数の属性を読み込み専用に変更する,または読み込み専用の変数を表示する)
returnコマンド(関数または外部スクリプトから復帰する)
setコマンド(シェルオプションを設定する,配列を作成する,または変数の値を表示する)
shiftコマンド(実行時パラメーターをシフトする)
testコマンド(条件式を判定する)
timesコマンド(シェルが消費したCPU時間を出力する)
trapコマンド(シグナルを受け取ったときの動作を設定する)【UNIX限定】
trueコマンド(終了コード0を返す)
typesetコマンド(変数や関数の属性と値を明示的に宣言する)
ulimitコマンド(システムリソースの上限を設定する)【UNIX限定】
umaskコマンド(新規ファイル作成時のアクセス権を設定する)【UNIX限定】
unaliasコマンド(エイリアス定義を無効にする)
unsetコマンド(変数の値と属性の設定を解除する)
waitコマンド(子プロセスの完了を待つ)
whenceコマンド(文字列をコマンドとした場合の解釈を表示する)
9.4 スクリプト拡張コマンド
#-adsh_fileコマンド(通常ファイルの割り当ておよび後処理をする)
#-adsh_file_tempコマンド(一時ファイルの割り当ておよび後処理をする)
#-adsh_jobコマンド(ジョブ名を宣言する)
#-adsh_job_stopコマンド(ジョブの打ち切り条件を定義する)
#-adsh_path_varコマンド(パス名を扱うシェル変数を定義する)
#-adsh_rc_ignoreコマンド(常に正常終了するコマンドを定義する)
#-adsh_scriptコマンド(実行中のジョブ定義スクリプトから外部のジョブ定義スクリプトファイルを呼び出す)
#-adsh_spoolfileコマンド(プログラム出力データファイルの割り当てをする)
#-adsh_step_startコマンド,#-adsh_step_errorコマンド,#-adsh_step_endコマンド(ジョブステップを定義する)
9.5 スクリプト制御文
case文(複数処理からの選択)
for文(繰り返し実行)
if文(条件分岐)
until文(条件が成立するまでの繰り返し)
while文(条件が成立している間の繰り返し)
9.6 スクリプト予約語コマンド
timeコマンド(コマンドの実行時間を出力する)

10. トラブルシューティング
10.1 対処の手順
10.2 ログ情報の種類
10.2.1 ジョブ実行ログ
10.2.2 システム実行ログ
10.2.3 トレースログ
10.3 トラブル発生時に採取が必要な資料
10.3.1 稼働情報
10.3.2 障害情報
10.3.3 スプール情報
10.4 資料の採取方法
adshcollectコマンド(資料を採取する)

11. メッセージ
11.1 メッセージの形式
11.1.1 メッセージの出力形式
11.1.2 メッセージの記載形式
11.1.3 メッセージ番号の割り当て
11.2 メッセージの出力先
11.3 メッセージの一覧
11.4 エラーの詳細
11.4.1 エラーの詳細(Windowsの場合)
11.4.2 エラーの詳細(UNIXの場合)
11.4.3 エラーの詳細(JP1/Advanced Shell固有の場合)

付録
付録A カバレージ情報を取得する対象
付録A.1 カバレージ情報を取得するコマンド
付録A.2 カバレージ情報を取得する制御文
付録A.3 カバレージ情報を取得する関数
付録A.4 カバレージ情報を取得するメタキャラクタ
付録A.5 カバレージ情報を取得するシェル変数の動作
付録B 各バージョンの変更内容
付録B.1 3020-3-S35-20での変更内容
付録B.2 3020-3-S35-10での変更内容
付録C このマニュアルの参考情報
付録C.1 関連マニュアル
付録C.2 このマニュアルでの表記
付録C.3 ディレクトリの表記について
付録C.4 KB(キロバイト)などの単位表記について
付録D 用語解説

索引

[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2011, 2012, Hitachi, Ltd.