PHP tput: не указано значение для $TERM и не указан -T

У меня возникает следующая ошибка при использовании exec() функция:

string(25) "/etc/init.d/mast list-log" 
array(1) { [0]=> string(44) "tput: No value for $TERM and no -T specified" } 
tput: No value for $TERM and no -T specified

Моя команда /etc/init.d/mast list-log и работал до перезагрузки. Я не вижу, в чем разница.

Исходный код

public static function execute($_ = null, $debug=true) {
    $_ = $debug ? $_." 2>&1"  : $_;
    exec("$_ | aha --word-wrap --no-header", $output, $exitCode);
    return $output;
}

Вопрос

У вас есть предложение, как решить эту проблему?

1 ответ

Решение

В оболочке вы можете установить переменную окружения, которая имеет жизненный цикл следующей команды следующим образом:

TERM=screen-256color ls -l --color=always

куда TERM=screen-256color является переменной среды и ls -l --color=always команда.

Решение

Вот мой модифицированный код, я просто предпочитаю TERM=screen-256color к моей команде:

public static function execute($_ = null, $debug=true) {
    $_ = $debug ? $_." 2>&1"  : $_;
    exec("TERM=screen-256color $_ | aha --word-wrap --no-header", $output, $exitCode);
    return $output;
}
Другие вопросы по тегам