Re: вопрос к знатокам баша

2013-10-14 Пенетрантность Vladimir Zhbanov
11.10.13, dimasdimas...@ya.ru написал(а): ... альтернативные реализации зело непросты (типа как с помощью screen/tmux разбить окно пополам, но тогда нужно в них запускать отдельные скрипты, которые непонятно как должны между собой общаться. и прочее в таком духе, тянущее еще лишние

Re: вопрос к знатокам баша

2013-10-13 Пенетрантность Michael Shigorin
On Fri, Oct 11, 2013 at 10:43:48PM +0400, dimas wrote: альтернативные реализации зело непросты talk? -- WBR, Michael Shigorin / http://altlinux.org -- http://opennet.ru / http://anna-news.info -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of

Re: вопрос к знатокам баша

2013-10-12 Пенетрантность dm.fedorov
12 октября 2013 г., 3:13 пользователь Dmitry Alexandrov 321...@gmail.com написал: так вот, есть какой-то способ считывать пользовательский ввод в течение этих 15 секунд с сохранением результатов, если энтер жмакнуть юзер не успел? На Баше как таковом, полагаю, способа нет. Утилита timeout.

Re: вопрос к знатокам баша

2013-10-12 Пенетрантность Артём Н.
Поффтоплю. Задача не для шелл-скрипта. Есть очень часто установленный Ruby (с простым базовым синтаксисом) и почти всегда и везде установленный Python... -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact

Re: вопрос к знатокам баша

2013-10-12 Пенетрантность dimas
вот это любопытно. только какой сигнал послать read'у, чтобы он отдал считанное хотя бы на stdout, а не просто молча сожрал? проследил strace'ом: по истечении таймаута read -t N оный рид убивает себя SIGALRM'ом, при это не возвращая ничего и никуда. точнее, не совсем так. ибо read - не испоняемый

Re: вопрос к знатокам баша

2013-10-12 Пенетрантность dimas
кстати, а есть же еще такая тулза scrpit, тоже вполне стандартная, можно с ее помощью как-то извратиться... -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive:

Re: вопрос к знатокам баша

2013-10-12 Пенетрантность dimas
спасибо, заценю! а для очистки строки я нагуглил реализацию через tput (простое echo -e \e[K) не работает как ожидается, если содержимое не влазит в одну строку. так что с этими штуками все равно связываться. а можешь для дураков объяснить строку с stty бла-бла-бла? из мана я мало что понял,

Re: вопрос к знатокам баша

2013-10-12 Пенетрантность dm.fedorov
12 октября 2013 г., 22:05 пользователь dimas dimas...@ya.ru написал: вот это любопытно. только какой сигнал послать read'у, чтобы он отдал считанное хотя бы на stdout, а не просто молча сожрал? Зачем сигнал? И не ридово это дело - на stdout выводить. У меня timeout запускает shell script,

вопрос к знатокам баша

2013-10-11 Пенетрантность dimas
всем привет! хочется в одной приблуде реализовать режим чата, суть которого в следующем: раз в 15, допустим, секунд проверяем наличие новых сообщений. в течение этого времени юзер может вводить свой текст, а по нажатию энтера - отправлять. если получили новое сообщение - сохраняем в переменной то,

Re: вопрос к знатокам баша

2013-10-11 Пенетрантность Dmitry Alexandrov
так вот, есть какой-то способ считывать пользовательский ввод в течение этих 15 секунд с сохранением результатов, если энтер жмакнуть юзер не успел? На Баше как таковом, полагаю, способа нет. Если нет возможности собрать альтернативную read’у читалку ввода из кода на Си, то могу предложить

Re: вопрос к знатокам баша

2013-10-11 Пенетрантность Павел Знаменский
Ещё можно читать по символу командой read -N 1 в цикле. Итоговое сообщение слепить из введенных символов. 12 октября 2013 г., 0:13 пользователь Dmitry Alexandrov 321...@gmail.comнаписал: так вот, есть какой-то способ считывать пользовательский ввод в течение этих 15 секунд с сохранением

Re: вопрос к знатокам баша

2013-10-11 Пенетрантность Dmitry Alexandrov
Читать в цикле, безусловно, можно, но я как-то не улавливаю в этом смысла. Как вы предлагаете разрывать его по таймауту? Можно, конечно, как-то так: #!/bin/bash TTY=$(tty) sleep 15s \ ttyecho -n $TTY $'\4' until [[ $REPLY == $'\4' ]]; do read -N 1 INPUT=$INPUT$REPLY done echo echo