Я строю команду в bash динамически. Это отлично работает:
COMMAND="java myclass"
${COMMAND}
Теперь я хочу динамически создать команду, которая перенаправляет вывод:
LOG=">> myfile.log 2>&1"
COMMAND="java myclass $LOG"
${COMMAND}
Команда по-прежнему вызывает процесс Java, но выходные данные не перенаправляются в myfile.log
Дополнительно, если я сделаю:
BACKGROUND="&"
COMMAND="java myclass $BACKGROUND"
${COMMAND}
Команда не выполняется в фоновом режиме.
Любые подсказки о том, как получить перенаправление журнала и фоновые биты работают? (bash -x показывает команды, создаваемые как положено)
(В действительности, в отличие от этого примера, значения LOG и BACKGROUND устанавливаются динамически)