LoginSignup
25
27

More than 5 years have passed since last update.

画面でポチポチしない!コマンドラインからJP1ジョブ定義を一括変更して楽をする方法

Last updated at Posted at 2015-06-28

JP1とは

JP1とは、JP1ジョブ管理(JP1/AJS3:JP1/Automatic Job Management System 3)のことで、国内No.1のシェアを持つ運用管理ツールである。
JP1では、ジョブネットと言われるジョブの入れ物に、コマンドを実行するジョブとジョブネット等が格納されており、それらはジョブの定義に基づいたルールで実行される

ジョブ定義取得

以下、JP1内部のFUNCTIONであるajsprintを利用すると、ジョブ定義を取得することができる。
例えば、以下のコマンドを実行すると、ジョブの絶対パスとそのサービス名を取得することができる。

ジョブ定義取得
/opt/jp1ajs2/bin/ajsprint -F ${サービス名} -f "%JN,%pm" -R -J ${ジョブパス}

ジョブ定義の一括変更

先ほどのジョブ定義取得を利用して、ジョブ定義を一括変更するコマンドを作成することできる。

ジョブのパラメータを一括編集

以下を実行すると、ジョブパス以下のジョブを"現在の状態"に編集するコマンドが生成される。
※表示された変更を行いたい内容・対象のみ、テキストエディタで編集して実行すれば一括変更できる
※JP1のFUNCTION定義配置箇所はopt/jp1ajs2/bin/と仮定

ジョブパラメータ一括取得
/opt/jp1ajs2/bin/ajsprint -F ${サービス名} -f "[%JN][%pm]" -R -J ${ジョブパス} | sed 's/\[\(.*\)\]\[\(.*\)\]/\/opt\/jp1ajs2\/bin\/ajschgjob -F ${サービス名} -pm '\''\2'\'' \1/g'

ジョブの所有者変更

※表示された変更を行いたい内容・対象のみ、テキストエディタで編集して実行すれば一括変更できる
※JP1のFUNCTION定義配置箇所はopt/jp1ajs2/bin/と仮定

ジョブ所有者変更
/opt/jp1ajs2/bin/ajsprint -F ${サービス名} -f "[%JN][%ow]" -R ${ジョブパス} | sed 's/\[\(.*\)\]\[\(.*\)\]/\/opt\/jp1ajs2\/bin\/ajschange -F ${サービス名} -o '\''\2'\'' \1/g'

実行ユーザ名変更

※表示された変更を行いたい内容・対象のみ、テキストエディタで編集して実行すれば一括変更できる
※JP1のFUNCTION定義配置箇所はopt/jp1ajs2/bin/と仮定

実行ユーザ名変更
/opt/jp1ajs2/bin/ajsprint -F AJSROOT1 -f "[%JN][%un]" -R -J ${ジョブパス} | sed 's/\[\(.*\)\]\[\(.*\)\]/\/opt\/jp1ajs2\/bin\/ajschange -F ${サービス名} -U '\''\2'\'' \1/g'

ジョブ削除

※表示された変更を行いたい内容・対象のみ、テキストエディタで編集して実行すれば一括変更できる
※JP1のFUNCTION定義配置箇所はopt/jp1ajs2/bin/と仮定

ジョブ削除
/opt/jp1ajs2/bin/ajsprint -F ${サービス名} -f "[%JN]" -R -N ${ジョブパス} | sed 's/\[\(.*\)\]/\/opt\/jp1ajs2\/bin\/ajsdelete -F -N ${サービス名} '\''\1'\''/g'

コメント変更

※表示された変更を行いたい内容・対象のみ、テキストエディタで編集して実行すれば一括変更できる
※JP1のFUNCTION定義配置箇所はopt/jp1ajs2/bin/と仮定

コメント変更
/opt/jp1ajs2/bin/ajsprint -F ${サービス名} -f "[%JN][%cm]" -R ${ジョブパス} | sed 's/\[\(.*\)\]\[\(.*\)\]/\/opt\/jp1ajs2\/bin\/ajschange -F ${ジョブパス} -C '\''\2'\'' \1/g'

保留ジョブを解除

※表示された変更を行いたい内容・対象のみ、テキストエディタで編集して実行すれば一括変更できる
※JP1のFUNCTION定義配置箇所はopt/jp1ajs2/bin/と仮定

保留ジョブ解除
/opt/jp1ajs2/bin/ajsprint -F ${サービス名} -f "[%JN][%ha]" -R ${ジョブパス} | grep yes | sed 's/\[\(.*\)\]\[\(.*\)\]/\/opt\/jp1ajs2\/bin\/ajschange -F ${サービス名} -b n \1/g'
25
27
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
27