stty susp
informa ao driver do terminal qual caractere (na verdade o que byte ), quando recebido sem escape do terminal (através do fio se for um terminal real, ou gravado para o lado mestre de um pseudo-terminal no caso de um emulador de terminal ou sshd
...), quando ISIG
está ativado, faz com que um SIGTSTP seja enviado para o trabalho de primeiro plano.
Não há chave ou teclado envolvido aqui. É o caractere ^Z
por padrão (0x1a). xterm
e outros emuladores de terminal geralmente enviam esse caractere quando você pressiona Z enquanto segura a tecla Ctrl .
Se você quiser dificultar a suspensão de um processo, você pode configurar seu emulador de terminal para que ele não envie ^Z
em Ctrl + Z , mas em alguma outra combinação de teclas. Com xterm
:
xterm -xrm 'XTerm.VT100.translations: #override \
Ctrl Shift <KeyPress> X: string(0x1a)\nCtrl <KeyPress> Z:'
Envia o caractere ^Z
ao pressionar Ctrl + Shift + X , e não ao Ctrl-Z . Com o xterm, eu não acho que você possa especificar combinações de teclas arbitrárias, você só pode usar teclas modificadoras como Ctrl ou Shift.
É claro que você também pode definir um byte diferente para stty susp
e ter xterm
enviando uma combinação de teclas diferente.
Note que você provavelmente não deseja torná-lo um byte sobre 0x7f, já que eles apareceriam em diferentes caracteres UTF-8.