13.4.2 ログインスクリプトの変更
この項では,ログインスクリプトの変更について説明します。
- 〈この項の構成〉
(1) UNIXジョブ,HTTP接続ジョブの場合
JP1/AJS3では,UNIXジョブ,HTTP接続ジョブの実行に先立って,次に示すシェルのログインスクリプトが実行されます。
-
sh,kshの場合
/etc/profile $HOME/.profile
-
cshの場合
/etc/csh.login $HOME/.cshrc $HOME/.login
そのため,ログインスクリプトの中にechoやcatコマンドなど,標準出力ファイルへ出力するコマンドがあると,ジョブの実行結果以外のテキストが標準出力ファイルに出力されます。また,ログインスクリプトの中で,対話環境が前提であるstty,tty,tset,scriptコマンドなどを実行すると,ジョブが異常終了するおそれがあります。このような場合は,これらのコマンドを実行しないようにログインスクリプトを変更してください。
なお,シェルで読み込むログインスクリプトで上記以外のものについては,各OSでの動作を確認してください。
例えば,sh,kshの場合は,ログインスクリプトの該当する個所に,次に示す網掛けの部分を追加してください。
cshの場合も同様に,該当する個所に,次に示す網掛けの部分を追加してください。
- 補足事項
-
AIXでは,/etc/environmentの情報は引き継ぎません。次の例を参考にして,ログインスクリプトを変更してください。
if [ "$JP1JobID" != "" ] ; then . /etc/environment export 設定したい環境変数 fi
/etc/environmentを読み込んだあと,設定したい環境変数に対してexportコマンドを実行してください。
- 重要
-
上記の設定は,sh,ksh(.profile)だけで有効です。その他のcshなどでは無効です。上記の設定をした場合,ログインスクリプトの中で/etc/environmentを読み込むため,各情報の設定順序が変わることがあることを考慮する必要があります。このため,ログインスクリプトに/etc/environmentの読み込みを追加する際は,/etc/environmentで設定している環境変数をログインスクリプトでも設定している個所がないかを確認し,挿入個所に十分注意してください。
ログインスクリプトの最初で/etc/environmentを読み込むように変更することを推奨します。
(2) フレキシブルジョブの場合
宛先エージェントのログインスクリプトの中に次のコマンドがある場合,これらのコマンドを実行しないようにログインスクリプトを変更してください。なお,フレキシブルジョブでログインスクリプトを実行するとき,環境変数AJSENVに値が設定され,環境変数JP1JobIDには値が設定されません。これらの環境変数の値の設定があるかどうかによって,フレキシブルジョブが実行しているかどうかを区別してください。
-
echo
-
cat
-
stty
-
tty
-
tset
-
script