У меня такая ситуация:
./
./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'
.