Como enviar o byte representando um caractere de controle do terminal para o aplicativo?

1

Eu criei um aplicativo de linha de comando no Linux que lê dados de stdin (o stdin pode ser o terminal).

Quando digito Ctrl+C no terminal, o terminal envia o byte 0x03 para a disciplina de linha. Agora, em vez da disciplina de linha enviar o byte 0x03 para meu aplicativo, ele manipulará 0x03 como um caractere de controle e enviará o sinal SIGINT para meu aplicativo.

Existe uma maneira de garantir que o byte 0x03 seja enviado para meu aplicativo quando eu pressionar Ctrl+C (sem precisar alterar as configurações de disciplina de linha, como mencionado neste pergunta ).

    
por user258851 04.11.2017 / 13:06

1 resposta

1

Pressionar Ctrl V (ou o que quer que lnext esteja configurado na disciplina de linha) forçará a próxima tecla a ser inserida literalmente.

    
por 04.11.2017 / 13:07