У меня такая ситуация:
./
./myscript.sh
./arguments.txt
./test.sh
Внутри myscript.shя должен запустить файл test.sh, передав ему аргументы, содержащиеся внутри arguments.txt.
myscript.sh это:
arguments=$(cat arguments.txt)
source test.sh $arguments
Это хорошо работает, если arguments.txt содержит не более одного аргумента:
firstargument
Подстановка:
++ source test.sh 'firstargument'
Но проблема в двух или более аргументах. Это делает это:
++ source test.sh 'firstargument secondargument'
Кроме того, я не знаю заранее количество аргументов внутри arguments.txt. Там может быть ноль или более.
source test.sh "$arguments"с кавычками? Это было бы одно объяснение для вашего описания
source test.sh "$arguments"и то и source test.sh $argumentsдругое source test.sh 'firstargument secondargument'.