| この記事の要点 |
|
JP1/AJS3 のコマンドとは
JP1/AJS3 は GUI(JP1/AJS3 - View)だけでなく、ほぼすべての運用操作をコマンドで実行できます。コマンドを使うと、別のスクリプトからジョブネットを起動したり、障害時の再実行手順を手順書に定型化したり、定義をテキストでバックアップしたりできます。この記事では、日立の公式マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス」(Version 13)で書式とオプションを確認したコマンドだけを、用途別に整理します。
記述形式と文法規則は Windows と UNIX で共通です。Windows ではコマンドプロンプトから、UNIX では制御端末から実行します。ただし、使えるコマンドやオプションが OS によって異なる場合があるため、最終的には自分のバージョンのコマンドリファレンスで確認してください。
用途別コマンド一覧
| やりたいこと | コマンド | 概要 |
|---|---|---|
| ジョブネットを動かす | ajsentry | 定義済みジョブネットを実行登録する(即時・計画・確定) |
| 状態・結果・予定を見る | ajsshow | 実行結果、現在の状態、次回予定を出力する |
| 次回予定を一時的に変える | ajsplan | 開始日時の変更、保留・保留解除、待ち合わせ条件の一時無効化など |
| 実行登録をやめる | ajsleave | ジョブネットの実行登録を解除する |
| 区切りで止める | ajsintrpt | 実行中のジョブが終わったあとでジョブネットを中断する |
| すぐ止める | ajskill | 実行中のジョブやジョブネットを強制終了する |
| やり直す | ajsrerun | ジョブネットを再実行する(先頭から、異常ジョブから、など) |
| 状態を書き換える | ajschgstat | ジョブの状態を正常終了などに変更する |
| 定義変更のため一時停止 | ajssuspend | ルートジョブネットをサスペンド、または解除する |
| 定義を出力する | ajsprint | ユニットの定義内容やカレンダー情報を出力する |
| 定義を取り込む | ajsdefine | ユニット定義ファイルからユニットを定義する |
| サービス状態を見る | jajs_spmd_status | JP1/AJS3 のプロセス(サービス)の状態を確認する |
| 起動(UNIX) | jajs_start | 物理ホストの JP1/AJS3 を起動する。格納先は /etc/opt/jp1ajs2/ |
まず押さえる共通ルール
スケジューラーサービスとユニット名の指定
多くのコマンドは -F サービス名 で対象のスケジューラーサービスを指定します。省略した場合は環境変数 AJSCONF の値、それもなければデフォルトのスケジューラーサービスが使われます。ユニット名は /group1/net1/job1 のように先頭が / の完全名で書くのが確実です。完全名でない場合は環境変数 AJSPATH の内容が先頭に補われ、未設定なら / が補われます。ユニット名の書式は次のとおりです。
[[論理ホスト名:][スケジューラーサービス名]:]ユニット名[:@実行ID]
権限と環境変数
- ジョブネットを操作するコマンドは、コマンドを実行した OS ユーザー名でアクセス権限を判断する。OS ユーザー名と JP1 ユーザー名が違う場合は環境変数
JP1_USERNAMEに JP1 ユーザー名を設定する - 論理ホスト(クラスタ)の JP1/AJS3 を操作する場合は環境変数
JP1_HOSTNAMEに論理ホスト名を設定する ajsentryやajsrerunの実行には JP1_AJS_Admin・JP1_AJS_Manager・JP1_AJS_Operator のいずれかの権限レベルが必要。ajsshowやajsprintは JP1_AJS_Guest でも実行できる- スケジューラーサービスが起動していないと、操作系のコマンドは異常終了する
戻り値
ajsentry、ajsrerun、ajsprint、ajsdefine などは、0 が正常終了、異常終了は 4〜124 の 4 の倍数(ajsentry は 1〜3 も異常)です。シェルスクリプトから呼ぶときは戻り値 0 以外をエラーとして扱えば十分です。
ajsentry: ジョブネットを実行登録する
定義済みのルートジョブネットを実行登録します。オプションで登録方式が決まり、-n -f -d -t -p -g のどれも付けないと -s(計画実行登録)として扱われます。
| オプション | 意味 |
|---|---|
| -s | 定義されたスケジュールに従って実行(計画実行登録)。当日の予定時刻を過ぎていても実行する |
| -f | 登録時点の次回スケジュールに従って実行(計画実行登録)。当日の予定時刻を過ぎていれば当日分は実行しない |
| -n | スケジュールを無視してすぐ実行(即時実行登録) |
| -d 日付 -t 時刻 | 指定日時に実行(確定実行登録)。時は 0〜47 まで指定できる |
| -b 開始日 -e 終了日 | 期間を指定して確定実行登録 |
| -g 世代数 | 次回以降の未来予定世代数(1〜99)を指定して確定実行登録 |
| -w | 即時実行登録したジョブネットの終了までコマンドを待たせる(-n と併用) |
| -c 変数名:値 | マクロ変数(AJS2 で始まる名前)に値を渡す。32 個まで |
| -h | 登録時に最初の実行世代を保留にする |
# スケジュールどおりに動かす(計画実行登録)
ajsentry -s /group1/net1
# 今すぐ実行し、終わるまで待つ
ajsentry -n -w /group1/net1
# マクロ変数 AJS2ENV に値を渡して即時実行
ajsentry -n -c AJS2ENV:/tmp/unit_data /group1/net1
# 指定日の 20 時に 1 回だけ実行(確定実行登録)
ajsentry -d 2026/10/10 -t 20 /group1/net1
注意点として、-w を付けても戻り値でジョブネットの成否は分かりません。結果は ajsshow で別に確認します。また、次回予定がすでにあるジョブネットに重ねて計画実行登録はできず、サスペンド中のジョブネットも登録できません。
ajsshow: 状態・実行結果・予定を確認する
実行登録済みのジョブネットやジョブの、過去の実行結果・現在の状態・次回予定を出力します。出力内容は排他的なオプションで選びます。
| オプション | 出力内容 |
|---|---|
| -l | 指定したジョブネットと、その中のジョブネット・ジョブの実行結果 |
| -s | 次回実行予定の実行登録情報 |
| -p | 次回の実行予定情報 |
| -r | ジョブの標準エラー出力ファイル名 |
| -f "フォーマット" | %J(完全名)、%C(状態)、%S(開始日時)、%E(終了日時)、%R(戻り値)などを自由に並べて出力 |
| -g 世代数 | 何世代分を出すか(a で全世代) |
| -b / -e | 暦日で期間を指定。-v / -w はジョブネットの実行日で期間を指定 |
| -R / -E / -T | 配下をすべて / 実行登録済みのもの / ルートジョブネットだけ |
# net1 と配下のジョブの実行結果
ajsshow -l /group1/net1
# group1 配下の登録済みジョブネットを 2 世代分、名前・開始・終了で一覧
ajsshow -t"世代: %G" -g2 -f"%J %S %E" -RE /group1
# 実行登録番号を指定して、異常ジョブの標準エラー出力ファイル名を調べる
ajsshow -B 20261003001 -r /group1/net1/job1
# 状態と戻り値だけを配下すべてについて出す
ajsshow -f "%J %C %R" -R /group1/net1
障害対応では「-f "%J %C %R" -R でどのジョブが異常か特定 → -r で標準エラー出力ファイルを見る」という流れが定番です。-b -e は暦日、-v -w はジョブネットの実行日が基準になるため、日をまたぐジョブネットでは結果が変わる点に注意してください。
ajsplan: 次回予定を一時的に変更する
実行登録済みのジョブネットの次回スケジュールを一時的に変更します。変更後の 1 回を実行したら、元の定義どおりのスケジュールに戻ります。ジョブの一時的な保留・保留解除や、待ち合わせ条件の一時無効化にも使います。
-t 時:分/-d 日付: 次回の開始時刻・開始日を変更(ジョブには指定不可)-h: 次回実行を一時的に保留。-rで保留を解除-p: 次回実行予定を取り消す-xw disable -xn 対象: 待ち合わせ条件を一時的に無効化
# 今日だけ開始時刻を 17:00 に変更
ajsplan -t 17:00 /group1/net1
# 次回実行を保留する/保留を解除する
ajsplan -h /group1/net1
ajsplan -r /group1/net1
ajsleave: 実行登録を解除する
ジョブネットの実行登録を解除します。定義の大きな変更や廃止の前に使います。-B で解除する世代(all、schedule、result または実行登録番号)、-b -e で期間を指定できます。
ajsleave /group1/net1
ajsintrpt と ajskill: 実行を止める
止め方は 2 種類あります。ajsintrpt は実行中のジョブが終わるのを待ってからジョブネットを中断します。ajskill は実行中のジョブやジョブネットをその場で強制終了し、ジョブネットを指定した場合は配下のジョブもすべて止まります。データ不整合を避けたいときはまず中断を、暴走しているジョブを止めたいときは強制終了を選びます。
# 今のジョブが終わったら止める
ajsintrpt /group1/net1
# net1 の中の job1 を強制終了
ajskill /group1/net1/job1
ajsrerun: 再実行する
ジョブネットを再実行します。再実行を指示するとすぐに実行されます。どこから再開するかをオプションで選びます。オプションを省略すると -a(異常終了したジョブから)として扱われます。
| オプション | 再実行の開始点 | 指定できる対象 |
|---|---|---|
| -t | ジョブネットの先頭から(正常終了した世代も可) | ルートジョブネットのみ |
| -a | 異常終了したジョブから | ルートジョブネットのみ |
| -n | 異常終了したジョブの次のジョブから | ルートジョブネットのみ |
| -s | 異常終了したジョブを直下に含むジョブネットから | ルートジョブネットのみ |
| -w | 警告検出終了したジョブを再実行 | ルートジョブネットのみ |
| -f | 指定したジョブネット・ジョブから | ネスト・ジョブも可 |
| -p | 指定したジョブネット・ジョブだけ | ネスト・ジョブも可 |
| -e | 指定したジョブネット・ジョブの次から | ルートジョブネットは不可 |
# 中断したジョブネットを先頭から再実行
ajsrerun -t /group1/net1
# 原因を取り除いたあと、異常終了したジョブから再実行
ajsrerun -a /group1/net1
# 異常ジョブを飛ばして次から(手作業で代替処理を済ませた場合など)
ajsrerun -n /group1/net1
落とし穴が 2 つあります。1 つは、前日以前に終わった世代を再実行すると、前回の実行日時点のスケジュール情報で再実行されることです(たとえば木曜分を金曜に再実行しても、金曜だけ動くネストジョブネットは実行されません)。もう 1 つは、実行中のジョブネットに対して -f や -e で実行中ジョブより前を開始点にすると、そのジョブが 2 回実行されることです。
ajschgstat: ジョブの状態を変更する
ジョブ(とジョブネットコネクタ)の状態を変更します。ジョブの状態を変えると、上位のジョブネットの状態も連動して更新されます。-t に指定できる状態は normal(正常終了)、warning(警告検出終了)、abnormal(異常検出終了)、fail(起動失敗)、bypass(計画未実行)、exit(終了コードとしきい値に従う)です。
# 異常検出終了の job1 を、手作業で対処済みとして正常終了扱いにする
ajschgstat -t normal -v abnormal /group1/net1/job1
ajssuspend: 定義変更のためにサスペンドする
実行登録済みのルートジョブネットは、そのままでは配下の定義を変更できません。ajssuspend -S でサスペンドすると、ルートジョブネット以外の定義を登録解除せずに更新できます(実行中のユニットは不可)。変更後は -C で解除します。
ajssuspend -S /group1/net1
# (ここで定義を変更)
ajssuspend -C /group1/net1
ajsprint と ajsdefine: 定義のバックアップと移行
ajsprint -a は、指定したユニットとその配下の定義を、ajsdefine でそのまま取り込める形式で出力します。テスト環境から本番環境への移行や、変更前の定義の退避に使えます。ajsprint -c はジョブグループのカレンダー(運用日 o、休業日 x)を表示します。
# group1 配下の定義をファイルに退避
ajsprint -a "/group1/*" > /tmp/group1_def.txt
# 2026 年 10 月のカレンダーを確認(ジョブグループのみ指定可)
ajsprint -c 2026/10 /group1
# 文法チェックだけ行う
ajsdefine -t /tmp/group1_def.txt
# 退避した定義を、ジョブグループ /group1 の下に定義する
ajsdefine -d /group1 /tmp/group1_def.txt
ajsdefine は同名ユニットがあるとき、-e でエラー、-i で確認プロンプト、-f で強制更新になります。強制更新は既存ユニットと配下をいったん削除してから作り直す動きなので、途中でエラーになると削除された状態で終わる場合があります。実行登録済みのルートジョブネットの情報は更新できない点も覚えておきましょう。
jajs_spmd_status: サービスが動いているか確認する
JP1/AJS3 のプロセス群が起動しているかを確認します。UNIX での格納先は /opt/jp1ajs2/bin/ です。UNIX の jajs_start は内部でこのコマンドを使い、起動完了を最大 60 秒待ちます。なお、インストール直後の jajs_start は起動処理がコメント化されていて、自動起動させるにはカスタマイズが必要です。
/opt/jp1ajs2/bin/jajs_spmd_status
障害時の基本手順(コマンド版)
ajsshow -f "%J %C %R" -Rで異常ジョブと戻り値を特定するajsshow -rで標準エラー出力ファイルの場所を調べ、内容を確認する- 原因を取り除く(データ修正、ディスク空き確保など)
ajsrerun -a(異常ジョブから)またはajschgstat -t normal+ajsrerun -n(手作業で代替した場合)で再開する- 再度
ajsshowで正常終了を確認する
関連
公式情報: JP1/Automatic Job Management System 3 コマンドリファレンス(日立製作所)
子ページはありません
- JP1/AJS3 とは
- JP1/AJS3 のコマンド一覧
- JP1/IM とは
- JP1/Base とは
- JP1/FTP(JP1/FTS)とは
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- JP1/FTS(File Transmission Server/FTP)とは|伝送カードとftstranの使い方 NEW 2026-10-02 22:03:11
- 日立 JP1 (Job Management Partner 1) 完全ガイド (AJS3 / IM / Base / PFM) 2026-10-02 22:03:11
- JP1/Baseとは|ユーザー認証・ユーザーマッピング・イベントサービスの仕組みと主要コマンド NEW 2026-10-02 22:03:10
- JP1/IM(JP1/IM2・IM3)とは|JP1イベントによる統合監視の仕組みとJP1/Baseとの関係 NEW 2026-10-02 22:03:10
- JP1/AJS3 コマンド一覧|ajsentry・ajsshow・ajsrerunなど主要コマンドの使い方とオプション NEW 2026-10-02 22:03:09
- JP1/AJS3とは?ジョブネット・スケジュール・Manager/Agent/Viewの構成を初心者向けに解説 NEW 2026-10-02 22:03:09
- クラウドネットワークの記事一覧 2026-10-02 16:08:51
- ルーティングとスイッチング完全ガイド — 静的/動的ルーティング/RIP/OSPF/BGP/VLAN/STP 2026-10-02 16:08:51
- ネットワークのアドレッシング完全ガイド — IP/MAC/ポート/サブネット/CIDR/IPv6/NAT 2026-10-02 16:08:51
- 本番環境のdll内で参照しているdllファイルの置き場所 2026-10-02 16:08:50
- 【Visual Studio】 C#のForm自動生成時に「値が有効な範囲にありません」エラー 2026-10-02 16:08:50
- 【Laravelエラー】does not comply with psr-4 autoloading standard. Skipping. 2026-10-02 16:08:50
- 【Laravelエラー】could not find driver(Windows, MySQL編) 2026-10-02 16:08:49
- The following channel memory did not pass cpu memory test. 2026-10-02 16:08:49
- 【pycharm】connecting to console が終わらない 2026-10-02 16:08:49