スクリプトパラメータを外部プログラム(ksh)に渡そうとすると、奇妙な動作が発生します。
私のセットアップは次のようになります:-私はkshスクリプト(「テスト」と呼ばれます)を持っています。これは要約すると次のようになります:
...
args="$@"
java my_main_class $args
...
-このスクリプトを次のようなもので呼び出すと:
> ./test "param1 param2" param3
...次に、外部アプリケーションは次のパラメーターを確認します:(param1、param2、param3)
スクリプトを次のようなものに変更した場合:
... java my_main_class "$@" ...
...そして同じ呼び出しを行うと、外部アプリケーションは次のパラメーター(param1 param2、param3)を認識します。これは、パラメーターが正しく認識されることを意味します。
質問:外部プログラムを呼び出す前に、「@ $」を変数に格納したまま、スペースを含むパラメーターを正しく渡すために、スクリプトの最初のバージョンを変更するにはどうすればよいですか?
よろしく、アンドレイ