記述形式
【Windows版】
mjrmtjob.exe -h 実行ホスト名 [-p OS種別] [-l 文字コード] [-u ユーザ名] [-P ポート番号] -d カレントディレクトリ "実行コマンド パラメタ…" |
【UNIX版】
mjrmtjob -h 実行ホスト名 [-p OS種別] [-l 文字コード] [-u ユーザ名] [-P ポート番号] -d 'カレントディレクトリ' '実行コマンド パラメタ…' |
機能説明
Systemwalker Operation Managerがインストールされていないリモートマシン上に配置されたコマンドまたはスクリプトを実行するコマンドです。
オプション
-h 実行ホスト名
リモートマシンのホスト名を指定します。64バイト以内で指定します。
-p OS種別
リモートマシンのOS名です。
Linux、SolarisまたはWindowsのいずれかを指定します。大文字小文字は区別しません。
省略した場合、mjrmtjobコマンドを実行したサーバのOS種別になります。
-l 文字コード
リモートマシンの文字コードを指定します。“ASCII”、“SJIS”、“EUC”、“UTF-8”のいずれかを指定します。OSにより指定できる文字コードが決まっています。
本指定に従って、コマンドおよびスクリプトのパラメタ、標準出力、標準エラー出力の文字コード変換を行います。省略した場合、または、指定可能な文字コード以外を指定した場合は、本コマンドを実行するサーバの文字コードで動作(文字コード変換しない)します。
以下にリモートマシンのOS別に指定可能な文字コードを示します。大文字・小文字は区別しません。
OS種別 | 指定可能文字コード |
---|---|
Windows | ASCII、または、SJIS |
Solaris | ASCII、SJIS、EUC、または、UTF-8 |
Linux | ASCII、または、UTF-8 |
-u ユーザ名
リモートマシン上で、コマンドまたはスクリプトを実行するユーザ名を指定します。
64バイト以内で指定します。Active Directoryを利用している場合は、ローカルアカウントは指定できません。省略した場合、ジョブの実行ユーザになります。
-P ポート番号
リモートマシンに接続する際のSSHのポート番号を指定します。1~65535の間の数値を指定してください。省略した場合は“22”で動作します。
-d カレントディレクトリ【Windows版】
リモートマシン上のコマンドまたはスクリプトを実行するカレントディレクトリを指定します。64バイト以内のフルパスで指定します。
-d 'カレントディレクトリ'【UNIX版】
リモートマシン上のコマンドまたはスクリプトを実行するカレントディレクトリをシングルクォーテーション(')で囲んで指定します。64バイト以内のフルパスで指定します。
オペランド
"実行コマンド パラメタ…"【Windows版】
ジョブとしてリモートマシン上で実行するコマンドまたはスクリプトを指定します。続いてパラメタを指定します。全体をダブルクォーテーション(")で囲んでください。
'実行コマンド パラメタ…'【UNIX版】
ジョブとしてリモートマシン上で実行するコマンドまたはスクリプトを指定します。続いてパラメタを指定します。全体をシングルクォーテーション(')で囲んでください。
復帰値
復帰値 | 意 味 |
---|---|
201~256 | mjrmtjobコマンドが異常終了しました。または、ジョブスケジューラが返すジョブの終了コードです。 |
上記以外 | 実行したコマンドの復帰値になります。 |
コマンド格納場所
Windows | Systemwalker Operation Managerインストールディレクトリ\MpWalker.JM\bin |
Solaris | /usr/bin |
注意事項
本コマンドの実行には、リモートマシン用のライセンスが必要です。
本コマンドは、Systemwalker Operation Managerのジョブとして登録された場合にだけ実行することができます。コマンドプロンプトから直接実行するなど、Systemwalker Operation Managerのジョブ以外の方法で実行することはできません。
[登録-ジョブ]ウィンドウで本コマンドを指定する際、[ディレクトリ]欄、[依頼ホスト名]欄、[実行ユーザ]欄などの指定は、すべてmjrmtjobコマンド自身に対する指定になります。リモートマシン上で実行するコマンドまたはスクリプトに対する指定は、mjrmtjobコマンドのパラメタとして[コマンド]欄、または[パラメタ]欄で指定してください。
本コマンドの各オプションに指定する引数に使用できる文字の範囲は、以下のとおりです。
リモートマシンのOS種別 | 指定可能文字 |
---|---|
Windows | 英数字、記号(\.:-_) |
Solaris | 英数字、記号(/.-_) |
リモートマシンがダウンした場合、以下のファイルが残存することがあります。リモートマシン起動時に手動で削除してください。
リモートマシンのOS種別 | リモートマシン上のファイル(注) |
---|---|
Windows | カレントディレクトリ配下の以下のファイル
|
Solaris | カレントディレクトリ配下の以下のファイル
|
(注)ファイル名先頭の“ホスト名”はmjrmtjobコマンドを実行するサーバのホスト名
オペランドで指定された実行コマンドをリモートマシン上(Unixの場合はシェル、Windowsの場合はVBスクリプト)でSSH通信によりリモート実行します。このため、制御が戻ってこないなど、この実行で問題があるようなコマンドまたはシェルスクリプトは実行しないでください。この場合の動作は保証されません。以下は問題があるコマンドの一例です。
- exitコマンド - デーモンを起動するコマンド - yesコマンド など
実行継続モードでの実行の継続はできません。
本コマンド実行時に以下のメッセージが前回履歴に出力される場合がありますが、SSHの初回接続時に出力されるものであり、問題はありません。
Warning: Permanently added ホスト名 (RSA) to the list of known hosts.
リモートマシンのOSがSolaris/Linuxの場合はシェル、Windowsの場合はバッチファイルとして実行するため、パラメタに文字としてダブルクォーテーションを指定する場合(Windows版)、または、シングルクォーテーションを指定する場合(UNIX版)を除いて、オペランドの指定形式はその仕様に依存します。
実行コマンドは、オペランド全体を囲むダブルクォーテーション(Windows版)、またはシングルクォーテーション(UNIX版)を除いた指定形式が、リモートマシン上で実行可能であるように指定してください。
使用例【Windows版】
Linuxサーバ“HOSTB”で“/user/command/keisan”コマンドを、パラメタに“aaa bbb ccc”を指定して、ユーザ“UserA”で“/work”をカレントディレクトリとして実行する場合の例:
mjrmtjob.exe -h HOSTB -p Linux -l UTF-8 -u UserA -d /work "/user/command/keisan aaa bbb ccc"
実行コマンドのパラメタに、文字としてダブルクォーテーション(")を指定したい場合、文字として使用したいダブルクォーテーション(")の前に、円記号(\)を3個付加してください。
実行コマンドのパラメタに“東京 A" ccc”を指定して実行する場合の例:
mjrmtjob.exe -h HOSTB -p Linux -l UTF-8 -u UserA -d /work "/user/command/keisan 東京 A\\\" ccc"
実行コマンドのパラメタにリモートマシンの環境変数を展開したものを指定する場合、以下のように環境変数を“%”で囲んで指定します。
実行コマンドのパラメタに環境変数XYZを指定して実行する場合の例:
(リモートマシンの環境変数XYZの値は“東京”とします)
mjrmtjob.exe -h HOSTC -p Windows -l SJIS -u UserA -d d:\work "d:\user\command\keisan %XYZ% aaa"
リモートマシン上での実行時は、以下のようになります。
d:\user\command\keisan 東京 aaa
実行コマンドのパラメタに“%”で囲まれた文字列を文字列として指定する場合、“%”を“%”でエスケープします。以下のように指定します。
実行コマンドのパラメタに“%XYZ%”の文字列を指定して実行する場合の例:
mjrmtjob.exe -h HOSTC -p Windows -l SJIS -u UserA -d d:\work "d:\user\command\keisan %%XYZ%% aaa"
リモートマシン上での実行時は、以下のようになります。
d:\user\command\keisan %XYZ% aaa
使用例【UNIX版】
Linuxサーバ“HOSTB”で“/user/command/keisan”コマンドを、パラメタに“aaa bbb ccc”を指定して、ユーザ“UserA”で“/work”をカレントディレクトリとして実行する場合の例:
mjrmtjob -h HOSTB -p Linux -l UTF-8 -u UserA -d '/work' '/user/command/keisan aaa bbb ccc'
実行コマンドのパラメタに、文字としてシングルクォーテーション(')を指定したい場合は、以下のようにしてください。
実行コマンドの前からパラメタに含まれるシングルクォーテーションの直前までをシングルクォーテーションで囲むように指定します。
パラメタに含むシングルクォーテーションを“\”でエスケープした上で、ダブルクォーテーションで囲んで指定します。なお、リモートマシンがWindowsの場合、エスケープは不要です。
その後にパラメタが続く場合は、再びシングルクォーテーションで囲んで指定します。
Linuxサーバ“HOSTB”で“/user/command/keisan”コマンドを、パラメタに“東京 A' ccc”を指定して、ユーザ“UserA”で“/work”をカレントディレクトリとして実行する場合の例:
mjrmtjob -h HOSTB -p Linux -l UTF-8 -u UserA -d '/work' '/user/command/keisan 東京 A'"\'"' ccc'