Ich habe diese Situation:
./
./myscript.sh
./arguments.txt
./test.sh
Im Inneren myscript.sh
muss ich die Datei ausführen und die test.sh
darin enthaltenen Argumente an sie übergeben arguments.txt
.
myscript.sh ist:
arguments=$(cat arguments.txt)
source test.sh $arguments
Dies funktioniert gut, wenn argements.txt höchstens ein Argument enthält:
firstargument
Die Substitution ist:
++ source test.sh 'firstargument'
Das Problem liegt jedoch bei zwei oder mehr Argumenten. Es macht das:
++ source test.sh 'firstargument secondargument'
Außerdem weiß ich nicht im Voraus, wie viele Argumente darin enthalten sind arguments.txt
. Es kann null oder mehr geben.
source test.sh "$arguments"
mit Zitaten? Das wäre eine Erklärung für Ihre Beschreibung
source test.sh "$arguments"
und source test.sh $arguments
beide führen zu source test.sh 'firstargument secondargument'
.