Como posso remapear Ctrl + C para enviar um sinal de interrupção com outra tecla?

2

Eu tenho um processo no bash que eu posso ligar para parar de usar Ctrl + C. Tanto quanto eu posso ver, isso é igual a enviar um sinal de saída (1). Gostaria de percorrer esses processos para obter uma lista de diferentes arquivos de entrada, digitando a tecla Escape em vez de Ctrl + C várias vezes. Aqui estou usando ping em uma lista de URLs apenas como exemplo:

cat /tmp/file
stackoverflow.com
superuser.com
serverfault.com
programmers.stackexchange.com

Como posso percorrer a lista e passar para a próxima digitando Escape em vez de Ctrl + C?

cat /tmp/file | while read i; do ping $i; done
    
por 719016 14.07.2011 / 04:27

1 resposta

2

Você pode usar stty para definir o caractere de interrupção.

stty intr q

Ajustará o caractere de interrupção para a sua tecla 'q'. (Desculpe, não tenho certeza sobre o código ESC neste momento). Para configurá-lo de volta para CTRL + C, faça:

stty intr ^C
    
por 14.07.2011 / 05:06