JP1/Advanced Shell

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


5.7.1 setコマンドで設定する場合

setコマンドで設定するシェルオプションを次の表に示します。

表5-34 setコマンドで設定するシェルオプション

名称 設定方法 シェルオプションを設定した場合の意味 デフォルト値
allexport -a
-o allexport
変数をすべて自動的にエクスポートします。 無効
braceexpand -o braceexpand ブレース展開を有効にします。ブレース展開とは,ブレース({ })で囲んだ部分を複数の単語にする展開のことです。ブレースで囲まれた1つ以上のコンマで区切られた文字をブレースの前後の文字と結合し,1つの変数として展開します。例えば,a{1,2,3}はa1,a2,a3に展開されます。 有効
bgnice -o bgnice すべてのバックグラウンドジョブの優先順位を下げて実行します。 無効
noglob -f
-o noglob
ファイル名置換を禁止します。ファイル名置換については,「5.1.5(6) 置換」を参照してください。
また,ブレース展開を無効にします。ブレース展開を有効にする場合は,noglobシェルオプションを無効にしてください。シェルオプションを無効にする方法については,「9.3 シェル標準コマンド」の「setコマンド(シェルオプションを設定する,配列を作成する,または変数の値を表示する)」を参照してください。
無効
nounset -u
-o nounset
置換対象の変数に値が設定されていない場合,エラーになりシェルが終了します。 無効
verbose -v
-o verbose
シェル入力行を読み込みかつ同じ内容を標準エラー出力に出力します。入力行を解析および実行する前に出力します。 無効
xtrace -x
-o xtrace
シェル変数PS4の値を行の先頭に配置した上で,実行されたコマンドとその引数を標準エラー出力に出力します。ただし,[[ ]]コマンド,スクリプト拡張コマンドおよびその引数は出力しません。 無効

注※
Windowsの実行環境ではサポートしていません。

注意事項
  • setコマンドでverboseオプションを指定すると,ジョブステップを定義するコマンドの入力行出力先が変わります。
    #-adsh_step_startコマンドの場合,実行した時点でジョブのSTDERRからジョブステップのSTDERRに切り替わるため,入力行出力はジョブのSTDERRに出力されます。
    #-adsh_step_endコマンドの場合,実行した時点でジョブステップのSTDERRからジョブのSTDERRに切り替わるため,入力行出力はジョブステップのSTDERRに出力されます。例を次に示します。

 ・ジョブ定義スクリプト
 set -o verbose     ←またはset -v
 
 #-adsh_step_start S1
   cmdA
 #-adsh_step_error
   cmdB
 #-adsh_step_end
   cmdC

 ・ジョブのSTDERR
 #-adsh_step_start S1
   cmdC
  :

 ・ジョブステップS1のSTDERR
   cmdA
 #-adsh_step_error
   cmdB
 #-adsh_step_end
  • 実行時パラメーターやJP1/Advanced Shellエディタでデバッグ実行を行う場合,コマンドの実行結果は標準エラー出力へ出力されます。setコマンドでverboseオプションを指定すると,コマンドの実行結果のメッセージは次の行の内容出力を行ったあとで出力されます。例を次に示します。

 ・ジョブ定義スクリプト
 001:  set -o verbose
 002:  echo "Line 002"
 003:  echo "Line 003"

 デバッグ実行時の出力例を次に示します。
 KNAX7018-I Breakpoint "1": filename="test.ash" line=1
 KNAX7032-I Stop in the script "test.ash".
 1: set -o verbose
 Current: set
 (adshdb) step   ←ジョブ定義スクリプトの001行目のsetコマンドを実行
 echo "Line 002"  ←ジョブ定義スクリプトの002行目を読み込んだ内容を出力
 KNAX6520-I Command set(line=1) succeeded. rc=0 E-Time=0.000s C-Time=0.000s     ←ジョブ定義スクリプトの001行目のsetコマンドの結果出力
 KNAX7032-I Stop in the script "test.ash".
 2: echo "Line 002"
 Current: echo
 (adshdb) 
 Line 002
    :

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


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

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