Run a string as a command within a Bash script
I usually place commands in parentheses $(commandStr)
, if that doesn't help I find bash debug mode great, run the script as bash -x script
your_command_string="..."
output=$(eval "$your_command_string")
echo "$output"
You can use eval
to execute a string:
eval $illcommando
don't put your commands in variables, just run it
matchdir="/home/joao/robocup/runner_workdir/matches/testmatch/"
PWD=$(pwd)
teamAComm="$PWD/a.sh"
teamBComm="$PWD/b.sh"
include="$PWD/server_official.conf"
serverbin='/usr/local/bin/rcssserver'
cd $matchdir
$serverbin include=$include server::team_l_start = ${teamAComm} server::team_r_start=${teamBComm} CSVSaver::save='true' CSVSaver::filename = 'out.csv'