Ctrl+D, cuando se escribe al comienzo de una línea en un terminal, significa el final de la entrada. Esto no es una señal en el sentido de Unix: cuando una aplicación está leyendo desde el terminal y el usuario presiona Ctrl+D, se notifica a la aplicación que se ha alcanzado el final del archivo (como si estuviera leyendo un archivo y hubiera pasado el último byte).
Ctrl+Cenvía una señal, SIGINT . Por defecto, SIGINT (la señal de interrupción) mata la aplicación en primer plano, pero la aplicación puede captar la señal y reaccionar de alguna manera diferente (por ejemplo, el propio shell capta la señal y aborta la línea que ha comenzado a escribir, pero no t salir, muestra un nuevo aviso y espera una nueva línea de comando).
Puede cambiar los caracteres asociados con el fin de archivo y SIGINT con el stty
comando, por ejemplo stty eof a
, haría a
el carácter de fin de archivo y stty intr ^-
deshabilitaría el carácter SIGINT. Esto rara vez es útil.
Ctrl+D
Significa Ctrl y D mayúscula o no importa?