Если Вы не используете консоль кадрового буфера, Вы во власти консоли текстового режима VGA - чей color_table[]
только имеет 16 элементов.
дата -d[1121330] специфична для GNU. Здесь вы запускаете одну оболочку и одну команду [1121331] date[1121332] на строку, это ужасно неэффективно. Делайте все это в [1121333]perl[1121334]:
Или с [1121335]Time::Piece[1121336], если доступно: