Я не могу найти ничего о "чем-то полезном", которое вы можете сделать в это время (хотя некоторые случайные недокументированные функции меня не удивят). Однако похоже, что это поведение предназначено для «экономии энергии» (за счет того, что не нужно будить графический процессор и перерисовывать экран при каждом мигании).
См. Связанный с вопрос и (отклоненный) ошибка GNOME .
Это похоже на ошибку в Bash 3.2.
Я не могу найти запись в журнале изменений , которая бы прямо соответствовала этому. Есть только расплывчатое упоминание об изменении поведения параметра errexit
для соответствия консенсусу POSIX (пункт l
в переходе с bash -4.0 -rc1 на bash -4.0 -выпуск ).
Это может быть связано, так как есть аналогичная проблема с errexit
, это не вызывает ее в Bash 3.2, но делает в Bash 4.0 (она не должна ничего печатать, так как оболочка должна выйти, когда команда подоболочки терпит неудачу):
$./bash3.2 -c 'set -e; (exit 1); echo end.'
end.
Обратите внимание, что проблема здесь, похоже, в подоболочке, так как она работает в обеих версиях:
$./bash3.2 -c 'trap "echo ERROR" ERR; false'
ERROR