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: