Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Kirill Frolov                        2:5030/827.2   02 Nov 2003  17:08:44
 To : Nick Gazaloff
 Subject : Re: libreadline read() in bash script
 -------------------------------------------------------------------------------- 
 
 
 On Sat, 01 Nov 03 22:48:35 +0300, Nick Gazaloff wrote:
 
  >> bash-евский read libreadline не пользует,
  >> поэтому с bash у тебя ничего не получится.
 
  NG> read -e использует libreadline
 
 #!/bin/sh
 
 font='-*-fixed-medium-r-semicondensed-*-12-*-*-*-*-*-koi8-*'
 geom='80x16'
 
 cmd=$(cat <<"END"
 unset HISTFILE
 while :; do
   echo -n 'word> '
 
 >  set -o history
 >  history -r /dev/null
 
   read -e x || break
   history -s `echo $x`
 
 > никак не работает. Если отмеченные выше квотингом строки
 > вынести за цикл то все введённые слова добавляются в конец
 > предыдущей строки истории. А как сейчас вообще истории нет.
 > Что я делаю не так понять не могу. :-/
 > Да и ещё важный момент -- исполняемые строки этого скрипт
 > тоже попадают в history!  Получается, history он не от read
 > зависит, а от исполняемых команд? :-/
 
   dict $x
 done
 END)
 test -n "$1" && cmd="dict $1 ; $cmd"
 x=`xsel` && test -n "$x" && cmd="dict $x ; $cmd"
 exec xterm -geometry $geom -fn $font -name "dict" -e sh -c "$cmd"
 --- [ZX]
  * Origin: Зенит -- чемпион! (2:5030/827.2)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: libreadline read() in bash script   Kirill Frolov   02 Nov 2003 17:08:44 
Архивное /ru.linux/3833fd5f6135.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional