#include <stdio.h> #include <readline/readline.h> #include <readline/history.h> main() { char *linha; for (;;) { /* Ignora linhas vazias */ while (strlen(linha = readline("msh$ ")) == 0) { free(linha); /* Obrigatório */ } add_history(linha); printf("%s\n", linha); free(linha); /* Obrigatório */ } }A utilização desta biblioteca requer que o programa seja compilado com a opção -lreadline -lcurses. Para mais informação consulte a man page respectiva.