JP1/Advanced Shell

[目次][用語][索引][前へ][次へ]


4.4.6 デバッグをする

ジョブ定義スクリプトファイルの動作を確認しながらデバッグ実行することをデバッグといいます。

adshexecコマンドの-dオプションの指定に相当します。デバッグをすると,コンソールが表示されます。エラーメッセージはエラーウィンドウに表示されます。

コンソールの内容を確認するためにプロセス終了の直前で停止します。初期化処理や構文解析でエラーがあった場合,プロセス終了前で停止しないでエラーウィンドウにエラーメッセージが表示されます。

デバッグの方法には,次の2種類があります。

方法 操作 概要
実行 [デバッグ]−[ブレークポイントまで実行]メニュー ブレークポイントまでの実行スタート,およびリスタートをします。
ステップ実行 [デバッグ]−[ステップイン]メニュー ジョブ定義スクリプトを1行ずつ実行して停止します。関数を呼び出す場合は,その関数の中も1行ずつ実行して停止します。
[デバッグ]−[ステップオーバー]メニュー ジョブ定義スクリプトを1行ずつ実行して停止します。関数を呼び出す場合,関数の中は1行ずつ停止しませんが,ブレークポイントがあるときは停止します。
[デバッグ]−[ステップアウト]メニュー 関数を呼び出した次の行またはブレークポイントで停止します。

注意事項
  • ファイル名のないジョブ定義スクリプトファイルに対してデバッグを実行しようとすると,ファイル名を付けて保存するためのダイアログボックスが表示されます。ジョブ定義スクリプトファイル名(.ash)を付けて保存しないと,デバッグは実行できません。
  • ジョブ定義スクリプトファイルの内容が更新されている場合,ファイルを更新するかどうかを問い合わせるメッセージが表示されます。ファイルを更新するとデバッグが実行できます。
  • 「プログラムの終了」のダイアログで「すぐに終了」を選択したときなど,デバッグ実行中にエディタが強制終了された場合,デバッガのプロセスであるadshesub.exeだけ終了せずに,コンソールを表示し続ける場合があります。その場合,taskkillコマンドまたはタスクマネージャーからadshesub.exeプロセスを終了させてください。
<この項の構成>
(1) デバッグ実行時のブレークポイントを設定・解除する
(2) デバッグを実行・中止する
(3) ウォッチへ変数を追加する

(1) デバッグ実行時のブレークポイントを設定・解除する

デバッグの実行時に,一時的に実行を停止させる位置を設定,または解除します。

JP1/Advanced Shellエディタの場合,カーソルがある行にブレークポイントを設定するため,外部スクリプトには設定できません。事前に外部スクリプトにブレークポイントを設定していても,外部スクリプトのブレークポイントでは停止しません。設定できるブレークポイントの数の上限は999です。

(a) ブレークポイントを設定する

  1. ブレークポイントを設定したい行にカーソルを移動させる。

    [図データ]

  2. [デバッグ]−[ブレークポイントの設定]メニューを選択する。
    カーソルのある行にブレークポイントが設定されます。ブレークポイントは,行の左側に[図データ]で表示されます。ジョブ定義スクリプトは,ブレークポイントを設定した行の先頭(実行前)まで実行して停止します。

    [図データ]

(b) 一部のブレークポイントを解除する

  1. ブレークポイントを解除したい行にカーソルを移動させる。

    [図データ]

  2. [デバッグ]−[ブレークポイントの解除]メニューを選択する。
    カーソルのある行のブレークポイントが解除されます。

    [図データ]

(c) すべてのブレークポイントを解除する

  1. ブレークポイントが設定されているジョブ定義スクリプトを表示する。

    [図データ]

  2. [デバッグ]−[ブレークポイントをすべて解除]メニューを選択する。
    表示されているジョブ定義スクリプトファイルのブレークポイントがすべて解除されます。

    [図データ]

注意事項
  • 編集モードの場合は,任意の行にブレークポイントを設定できます。デバッグモードの場合,ブレークポイントを設定できるのは,実行対象となっているコマンド,またはステートメント単位に限られます。
  • 実行できない行にブレークポイントが設定されている場合は,デバッグモード開始時に,エディタが自動的に下方向に適切な位置を検索して,そこにブレークポイントを設定します。
  • ブレークポイントは,999個まで指定できます。

(2) デバッグを実行・中止する

(a) ブレークポイントまで実行する場合

  1. [デバッグ]−[ブレークポイントまで実行]メニューを選択する,またはツールバーの[ブレークポイントまで実行]ボタンをクリックする。
    JP1/Advanced Shellエディタがデバッグモードになり,デバッグが始まります。次に実行される行の左側には,実行する位置を示す記号([図データ])が表示されます。コメント行やスペース行は無視されます。
    ブレークポイント([図データ])を指定している行まで実行されると,実行が一時的に停止されます。

    [図データ]

    ブレークポイントの設定方法については,「4.4.6(1) デバッグ実行時のブレークポイントを設定・解除する」を参照してください。
  2. デバッグを中止したい場合は,[デバッグ]−[デバッグの中止]メニューを選択する,またはツールバーの[デバッグの中止]ボタンをクリックする。
    メニューを選択した時点で,デバッグが中止され,メッセージを出力して後処理をして終了します。プロセス終了前で停止しないでデバッグを終了します。エディタは編集モードに戻ります。

    [図データ]

(b) 1行ずつ実行(関数の中もステップ実行)する場合

  1. [デバッグ]−[ステップイン]メニューを選択する,またはツールバーの[ステップイン]ボタンをクリックする。
    エディタがデバッグモードになり,デバッグが始まります。次に実行される行の左側には,実行する位置を示す記号([図データ])が表示されます。コメント行やスペース行は無視されます。関数の中も1行ずつ実行します。ジョブ定義スクリプトの最後の行まで実行すると,デバッガのプロセスの終了を示す記号([図データ])が表示されます。
    CUIとは異なって,外部スクリプトを実行する場合,外部スクリプトでは停止しないで,エディタで表示しているジョブ定義スクリプトの次のコマンドで停止します。

    [図データ]

  2. デバッグを中止したい場合は,[デバッグ]−[デバッグの中止]メニューを選択する,またはツールバーの[デバッグの中止]ボタンをクリックする。
    メニューを選択した時点で,デバッグが中止され,メッセージを出力して後処理をして終了します。なお,プロセス終了前で停止しないでデバッグを終了します。エディタは編集モードに戻ります。

    [図データ]

(c) 1行ずつ実行(関数の中はステップ実行しない)する場合

  1. [デバッグ]−[ステップオーバー]メニューを選択する,またはツールバーの[ステップオーバー]ボタンをクリックする。
    エディタがデバッグモードになり,デバッグが始まります。次に実行される行の左側には,実行する位置を示す記号([図データ])が表示されます。コメント行やスペース行は無視されます。ジョブ定義スクリプトの最後の行まで実行すると,デバッガのプロセスの終了を示す記号([図データ])が表示されます。
    CUIとは異なって,外部スクリプトを実行する場合,外部スクリプトでは停止しないで,エディタで表示しているジョブ定義スクリプトの次のコマンドで停止します。

    [図データ]

  2. デバッグを中止したい場合は,[デバッグ]−[デバッグの中止]メニューを選択する,またはツールバーの[デバッグの中止]ボタンをクリックする。
    メニューを選択した時点で,デバッグが中止され,メッセージを出力して後処理をして終了します。なお,プロセス終了前で停止しないでデバッグを終了します。エディタは編集モードに戻ります。

    [図データ]

(d) 関数の終わりまで実行する場合

  1. [デバッグ]−[ステップアウト]メニューを選択する,またはツールバーの[ステップアウト]ボタンをクリックする。
    エディタがデバッグモードになり,デバッグが始まります。次に実行される行の左側には,実行する位置を示す記号([図データ])が表示されます。コメント行やスペース行は無視されます。ジョブ定義スクリプトの最後の行まで実行すると,デバッガのプロセスの終了を示す記号([図データ])が表示されます。
    CUIとは異なって,関数に入っていない状態でも,ジョブ定義スクリプトの終わりまでジョブ定義スクリプトを実行します。ただし,関数をリターンするまでにブレークポイントがある場合は停止します。

    [図データ]

  2. 実行中のジョブ定義スクリプトを停止させたい場合は,[デバッグ]−[スクリプトの停止]メニューを選択する,またはツールバーの[スクリプトの停止]ボタンをクリックする。
    [スクリプトの停止]ボタンをクリックしたときに実行していたコマンドはそのまま実行を続け,次のコマンドの実行に移る前に停止します。
  3. デバッグを中止したい場合は,[デバッグ]−[デバッグの中止]メニューを選択する,またはツールバーの[デバッグの中止]ボタンをクリックする。
    メニューを選択した時点で,デバッグが中止され,メッセージを出力して後処理をして終了します。なお,プロセス終了前で停止しないでデバッグを終了します。エディタは編集モードに戻ります。

    [図データ]

(e) デバッグ実行時のエラーウィンドウ,ウォッチウィンドウおよびコンソール

(3) ウォッチへ変数を追加する

ウォッチウィンドウに指定した変数を追加します。

  1. デバッグモードで,[デバッグ]−[ウォッチへ変数の追加]メニューを選択する。
    [変数の追加]ダイアログボックスが表示されます。

    [図データ]

    ダイアログボックスの設定方法については,「4.7.7 変数の追加ダイアログボックス」を参照してください。
  2. 追加したい変数の名前を入力する。
    入力できるのは99バイトまでです。これを超えた変数名を入力できません。

    [図データ]

  3. [追加]ボタンをクリックする。
    入力した変数の名前がウォッチウィンドウに追加されます。

    [図データ]

  4. [キャンセル]ボタンをクリックする。
    [変数の追加]ダイアログボックスが閉じます。

[目次][前へ][次へ]


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

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