シェルで開かれたプログラムにコマンドをどのように渡すことができますか?

シェルで開かれたプログラムにコマンドをどのように渡すことができますか?

私はLinux UbuntuでJboss-cliを使ってプログラムの配布を自動化するシェルスクリプトを書いています。 jboss cliインタフェースを開き、いくつかのコマンドを実行する必要がありますが、これを自動的に実行したいと思います。それはどのように見えますか?

cd /opt/jboss/bin
./jboss-cli.sh --connect

上記の行はjbossコマンドラインを開きます。次の公開プログラムにコマンドを送信できるようにしたい。 undeploy FlcErp.ear

エコーして直接テキストを提供しようとしましたが、Jbossプログラムの実行が終了するまで何も実行されません。

私も試してみましたが、命令として./jboss-cli.sh --connect undeploy "FlcErp.ear"読みました。"FlcErp.ear"

ベストアンサー1

標準入力から読み出す場合は、jboss-cli.shコマンドをパイプで接続できます。

echo 'undeploy FlcErp.ear' | ./jboss-cli.sh --connect

複数のコマンドを実行するには、複数のコマンドを使用できますecho

{ echo 'undeploy FlcErp.ear'; echo 'other gommands'; echo 'go here'; } | ./jboss-cli.sh --connect

ただし、ここにある文書は通常より簡単です。

./jboss-cli.sh --connect <<EOF
undeploy FlcErp.ear
other commands
go here
EOF

おすすめ記事