1

コマンドライン引数を取るスクリプトがあり、いくつかの処理の後、これらの引数を Java アプリケーションに送信します。

これらの引数の一部は引用できます。これらの引数をそのまま (引用符で) 送信したいと思います。次のスクリプトを使用しています。

$ARGS=""
for a in $@; do
    ARGS = ${ARGS} ${a};
done
exec $JAR $ARGS

$JARには、jar を実行するコマンドが含まれています。
ただし、次のオプションを使用してスクリプトを実行すると:

script x y "a b" 

このスクリプトは、3 つのパラメーターをxy、およびabとして扱います。そして、これらのパラメーターをxy、および"a b"
と見なしたいと思います。

4

1 に答える 1

2

引数には配列を使用します。

$ARGS=()
for a in "$@"; do
    ARGS+=("${a}")
done
exec "$JAR" "${ARGS[@]}"
于 2012-07-23T05:19:56.983 に答える