Если вы используете оболочку bash
, то по-простому можно попробовать прочитать один символ из ввода, используя таймаут почти 0. Это возвращает true, если что-то было прочитано, так что нужно попробовать еще раз. Например, поместите эту функцию в начало вашего скрипта и вызовите ее между сном и следующим чтением:
flush(){
while read -N 1 -t 0.01
do :
done
}
Дистрибутивы на основе RPM содержат пакеты для различных архитектур (, например. x86
и x86_64
для Intel 32 и 64 бит ), есть также noarch
пакеты, которые не содержат двоичных файлов (документацию, скрипты,... ). По умолчанию устанавливаются только пакеты, соответствующие архитектуре машины (и поддерживающие noarch-пакеты ), вы можете запросить явно для других архитектур (, например для перекрестной -компиляции ). После этого установленные пакеты обновляются нормально.