Onde posso encontrar uma lista completa das combinações de teclado que enviam sinais no Linux?
Por exemplo:
- Ctrl+ C- SIGINT
- Ctrl+ \- SIGQUIT
Onde posso encontrar uma lista completa das combinações de teclado que enviam sinais no Linux?
Por exemplo:
Respostas:
A disciplina de linha N_TTY do Linux envia apenas três sinais diferentes: SIGINT, SIGQUIT e SIGTSTP. Por padrão, os seguintes caracteres de controle produzem os sinais:
man stty | grep -C1 signalé uma fonte para esses três, sendo os únicos sinais gerados pelo terminal.
SIGINT, SIGQUITe SIGTSTPsão a única sinais "habituais" enviada pela disciplina line. No BSD você também tem coisas do tipo SIGINFO, mas isso não é padrão.
Você pode usar sttypara verificar ou alterar os caracteres que geram sinais.
$ stty -a | grep -Ewoe '(intr|quit|susp) = [^;]+'
intr = ^C
quit = ^\
susp = ^Z
intr(interromper) gera SIGINT, quitgera SIGQUIT, susp(suspende) gera SIGTSTP. stty -atambém mostrará coisas como start = ^Q; stop = ^S;e erase = ^?(backspace), que não enviam sinais, mas afetam a camada terminal.
Plain sttymostrará as configurações não padrão e, por exemplo stty intr ^Q, alteraria o caractere de interrupção para em ^Qvez de ^C.
Eu acho que ^L(feed de formulário, nova página) não é um recurso terminal, mas um caractere frequentemente usado pelos aplicativos para solicitar um redesenho da exibição, verificando novamente o tamanho da janela ao mesmo tempo.
^Ltem um significado diferente para diferentes aplicações. Na maioria dos cursesaplicativos baseados em (tais como vim, less, mutt, mc, etc.) que obriga um redesenho completo (portanto, re-verificar o tamanho da janela), mas em conchas ( bashetc.) ele só limpa a tela. Não há SIGWINCHenvolvido.
man 1 stty.