bash - sirve - shell script linux español




En bash, ¿cómo puedo vincular una tecla de función a un comando? (2)

Esta solución es específica para entornos X11 y no tiene nada que ver con bash, sino que agrega lo siguiente a su .Xmodmaps

 % loadkeys
 keycode 88 = F12
 string F12 = "foobar"
 %

enviará la cadena "foobar" a la terminal al presionar F12.

Ejemplo: Quiero vincular la tecla F12 con el comando echo "foobar" manera que cada vez que presiono F12, el mensaje "foobar" se imprima en la pantalla. Idealmente, podría ser cualquier comando de shell arbitrario, no solo builtins. ¿Cómo se puede hacer esto?


Puede definir enlaces de tecla bash en .inputrc (archivo de configuración para la biblioteca GNU Readline). La sintaxis es

<keysym o nombre de la clave>: macro

por ejemplo:

Control-o: "> output"

creará una macro que inserta "> salida" cuando presiona

 "\e[11~": "echo foobar"

creará una macro que inserta "echo foobar" cuando presionas F1 ... No sé qué teclados para F11 está disponible.





binding