Tengo esta situación:
./
./myscript.sh
./arguments.txt
./test.sh
Dentro myscript.sh
, tengo que ejecutar el archivo test.sh
, pasándole los argumentos contenidos dentro arguments.txt
.
myscript.sh es:
arguments=$(cat arguments.txt)
source test.sh $arguments
Esto funciona bien si if argumentos.txt contiene como máximo un argumento:
firstargument
La sustitución es:
++ source test.sh 'firstargument'
Pero el problema es con dos o más argumentos. Hace esto:
++ source test.sh 'firstargument secondargument'
Además, no sé de antemano la cantidad de argumentos que contiene arguments.txt
. Puede haber cero o más.
source test.sh "$arguments"
con citas? Esa sería una explicación para su descripción
source test.sh "$arguments"
y source test.sh $arguments
ambos resultan en source test.sh 'firstargument secondargument'
.