Javaアプリケーションを開発しました。私はアプリケーションを5つのサブアプリケーションに分割し、シェルスクリプトを使用して各サブアプリケーションのサービスラッパーを作成しました。
subaap1/bin/app.sh
subaap2/bin/app.sh
...
startup.sh
それでは、すべてのラッパースクリプトを実行する起動スクリプトを作成したいと思います。
#!/bin/bash
sh subaap1/bin/app.sh start
sh subaap2/bin/app.sh start
...
しかし、実行すると、次のような結果が得られます。
予期しないコマンド:開始
この問題をどのように解決できますか?
ベストアンサー1
サブアプリケーションを実行するためにスクリプトでshを使用する必要はありません。
ちょうど使用:
#!/bin/bash
subaap1/bin/app.sh start
subaap2/bin/app.sh start
...
以下のコメントに基づいて更新してください。
あなたのバージョンは機能するはずですが、shが呼び出すシェルが何であるかを知る必要があります。シェルが正しくないか、使用するシェルに対するアプリケーションの権限が正しくない可能性があります。