Я не знаю, почему людей смущает этот вопрос, но, может быть, вопрос сбивает с толку, вот что мне кажется, работает нормально:
my_args_array=("$@")
export MY_ARGS="${my_args_array[@]}"
тогда мы просто используем MY_ARGS
вот так:
foo --bar $MY_ARGS
примечание как указывает @Kusalananda :это будет ошибкой , если в исходных аргументах есть пробелы. И в этом случае лучше всего передавать аргументы через дочерние процессы, используя $@
, вместо переменной env.