2.5. 非対話モードでの実行

管理 CLI を起動せず、管理 CLI と対話しなくても、管理 CLI コマンドを実行できます。これは、コマンドのバッチ処理や、スクリプトからのコマンド実行に便利です。jboss-cli 起動スクリプトに コマンドを渡す か、コマンドが含まれるファイルを渡す ことが可能です。

コマンドを渡す

--command 引数を使用すると、実行する単一の CLI コマンドを指定できます。コマンドの完了後、管理 CLI が終了します。

$ EAP_HOME/bin/jboss-cli.sh --connect --command="/interface=public:read-attribute(name=inet-address,resolve-expressions=true)"

指定された各コマンドの出力は実行時に表示されます。

{
    "outcome" => "success",
    "result" => "127.0.0.1"
}

--commands 引数を指定して、実行する CLI コマンドのコンマ区切りリストを指定することもできます。

コマンドのファイルを渡す

--file 引数を使用して、実行する CLI コマンドのテキストファイルを渡すことができます。 このファイルでは、各コマンドを行ごとに指定します。

$ EAP_HOME/bin/jboss-cli.sh --connect --file=/path/to/cli_commands.txt

ファイルの各コマンドからの出力は、実行時に表示されます。

出力例

{
    "outcome" => "success",
    "result" => "NORMAL"
}
helloworld.war

注記

理解と維持のために CLI スクリプトにコメントを含めることができます。コメントは、行頭のシャープ記号 (#) で表されます。スクリプトの実行中に JBoss EAP は、含まれるコメントを無視します。

--echo-command 引数を使用すると、出力にプロンプトとコマンドを含めることができます。これは、出力と実行したコマンドを照合して障害を解決するときに便利です。

$ EAP_HOME/bin/jboss-cli.sh --connect --file=/path/to/cli_commands.txt --echo-command

コマンドと出力は、コマンドが実行されると表示されます。

コマンドエコーによる出力の例

[standalone@localhost:9990 /] :read-attribute(name=running-mode)
{
    "outcome" => "success",
    "result" => "NORMAL"
}
[standalone@localhost:9990 /] ls /deployment
helloworld.war