変数を使用してBashで実行可能ファイルを実行する

変数を使用してBashで実行可能ファイルを実行する

実行可能ファイルを実行する次の簡単なスクリプトがあります。

./executable.x -input input.dat << i
input1
input2
i

すべてが完璧で、世界のすべてが正しかった。しかし、異なる入力を必要とするいくつかのツールを実行する別のスクリプトが欲しいです。それで、上記の4行をスクリプトが解釈するのと同じ変数に保存したいと思います。私は以下を試しました:

run_command=$(echo -e "./executable.x -input input.dat << i\ninput1\ninput2\ni")

echo すると$run_command正確に見えますが、解釈が異なります。どんな案内でも大変感謝します!

答え1

この試み:

run_command='./executable.x -input input.dat << i
input1
input2
i
'

eval "$run_command"

関連情報