Основы программирования в Linux
Основы программирования в Linux читать книгу онлайн
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Значения
TIMEMINВозможны четыре варианта.
□
MIN = 0TIME = 0readread□
MIN = 0TIME > 0readTIMEread□
MIN > 0TIME = 0readMIN□
MIN > 0TIME > 0readreadMINTIMEУстановив неканонический режим и используя значения
MINTIMEЕсли вы хотите просмотреть параметры
termios$ <b>stty -a</b>На установленных у авторов системах Linux, обладающих структурами
termiosspeed 38400 baud; rows 24; columns 80; line = 0;intr = ^C; quit = ^; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;werase = ^W; lnext = ^V; flush = ^O, min = 1; time = 0;-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts-ignbrk -brkint -ignpar -parmirk -inpck -istrip -inlcr -igncr icrnl -ixon -ixoff-iuclc -ixany -imaxbe1 iutf8opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel n10 cr0 tab0 bs0 vt0 ff0isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprtechoctl echokeСреди прочего, как видите, символ
EOF□ Первый способ — применить следующую команду, если ваша версия
stty$ <b>stty sane</b>Если вы потеряли преобразование клавиши возврата каретки в символ перехода на новую строку (который завершает строку), возможно, потребуется ввести
stty sane□ Второй способ — применить команду
stty -gstty$ <b>stty -g > save_stty</b>...<<i>эксперименты с параметрами</i>>...$ <b>stty $(cat save_stty)</b>В финальной команде
sttysave_stty="$(stty -g)"<<i>изменение stty-параметров</i>>stty $save_stty□ Если вы все еще в тупике, третий способ — перейти на другой терминал, применить команду
pskill hup <<i>id процесса</i>>sttyВы также можете применять команду
sttyДля установки режима, в котором ваш сценарий командной оболочки сможет выполнять посимвольное считывание, вы должны отключить канонический режим и задать 1 и 0. Команда будет выглядеть следующим образом:
$ <b>stty -icanon min 1 time 0</b>Теперь терминал будет считывать символы немедленно, вы можете попробовать выполнить еще раз первую программу menu1. Вы увидите, что она работает, как первоначально и предполагалось.
Вы также могли бы улучшить вашу попытку проверки пароля (см. главу 2), отключив отображение перед приглашением ввести пароль. Команда, выполняющая это действие, должна быть следующей:
