[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: un caracter



On Tue, 5 Mar 2002, Sistemas 1 wrote:

> Alguien conoce una forma de recibir un caracter desde stdin y ponerlo en una
> variable (sin esperar enter) en bash o ksh.

Para este tipo de cosas hay que usar curses. Te dá independencia del
tipo de terminal a través de la variable de entorno TERM. curses o ncurses
es una librería para C pero no hay problema te haces un programita en C y 
te lo colocas en un lugar accesible a la bash  ($PATH).

 =============================8<-----(getchar.c)------------------------
#include <stdlib.h>
#include <stdio.h>
#include <curses.h>

WINDOW *win;

main(){
        int ch;

        win=initscr();
        noecho();
        raw();
        cbreak();
        keypad(win, TRUE);
        ch=getch();
        endwin();
        printf("%c\n", ch);
        /* printf("%d\n", ch); */
}
=============================8<-----(getchar.c)------------------------

Para compilarlo.

cc getchar.c -lncurses -o getchar


Un saludo

Antonio Castro

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        /\     /\      Ciberdroide Informática (Tienda de Linux)
          \\W//            <<< http://www.ciberdroide.com >>>
	 _|0 0|_                                                    
+-oOOO--(___o___)--OOOo----------------------------------------------------+ 
|  . . . . U U . . . . Antonio Castro Snurmacher  acastro@ciberdroide.com  |  
|  . . . . . . . . . .                                                     | 
+()()()----------()()()----------------------------------------------------+
| *** 1.700 sitios clasificados por temas sobre Linux en ***Donde_Linux*** |
| <<< http://www.ciberdroide.com/misc/donde/dondelinux.html >>>            |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+




Reply to: