Многие ответы здесь рекомендуют $@
или $*
с и без кавычек, однако ни один, кажется, не объясняет, что они действительно делают и почему вы должны так поступать. Итак, позвольте мне украсть это превосходное резюме из этого ответа :
Обратите внимание, что кавычки имеют все значение и без них оба имеют идентичное поведение.
Для моей цели мне нужно было передать параметры из одного скрипта в другой как есть, и для этого лучшим вариантом является:
# file: parent.sh
# we have some params passed to parent.sh
# which we will like to pass on to child.sh as-is
./child.sh $*
Обратите внимание, что нет кавычек и $@
должно работать в вышеуказанной ситуации.