A veces me pasa que presiono CTRL+ Zpor accidente y mi aplicación desaparece en segundo plano. Lo sé, puedo traerlo de vuelta fg
, así que no es gran cosa. Pero de todos modos me pregunto si desactivar esto job control
. En toda mi vida, no puedo recordar un solo momento en el que lo haya necesitado, simplemente lo veo como una reliquia del pasado.
¿Está bien desactivarlo job control
por completo? ¿O me falta algo y esta función puede resultar útil? ¿Cómo lo deshabilitaría en mi.bashrc
ACTUALIZAR:
Lo intenté set +m
según lo sugerido por @Falsenames. Sin embargo, esto sólo funciona cuando lo escribo en la terminal. Agregar set +m
a my .bashrc
no tiene ningún efecto.
Respuesta1
Puede agregar lo siguiente a su línea de comando para dejar de usar el modo de monitoreo.
conjunto +m
Si realmente necesita la funcionalidad Ctrl-z más adelante, puede simplemente escribir 'set -m' para habilitar el monitoreo de esa sesión.
Dehombre golpe. Tenga en cuenta que esto es para '-m', y "+m" desactiva esa configuración.
set [+abefhkmnptuvxBCEHPT] [+o option] [arg ...]
....
-m
Monitor mode. Job control is enabled. This option is on by default for interactive
shells on systems that support it (see JOB CONTROL above). Background processes
run in a separate process group and a line containing their exit status is printed
upon their completion.
Como último esfuerzo, es posible que desee compilar manualmente una versión de bash sin el indicador "--enable-job-control". Aquí hay un rápidoGuía de instalaciónde GNU. Si elige seguir esta ruta, NO reemplace /bin/bash en caso de que los procesos en segundo plano se ejecuten a través de bash y esperen el control del trabajo. En su lugar, cree un /bin/bash.alt u otro archivo. Su shell predeterminado se puede cambiar a este alternativo ejecutando usermod o editando /etc/passwd como root.
Respuesta2
stty susp undef
deshabilitará la señal de suspensión iniciada por el teclado para la mayoría de los programas; sin embargo, los comandos como vim y emacs que tienen enlaces específicos Ctrl-Zdeberán reconfigurarse individualmente. En emacs, puedes ejecutar (global-unset-key "\C-z")
.
Puede agregar ese comando stty a su ~/.bash_profile
o ~/.profile
, cerrar sesión, iniciar sesión nuevamente.
Respuesta3
¿O me falta algo y esta función puede resultar útil?
Para responder a esta parte de la pregunta: Cz/ fg
combo es esencial para mi flujo de trabajo vim. Por ejemplo, prefiero Cz > git commit
> fg
usar envoltorios de git desde dentro de vim.
Cz ayuda a tratar el shell como IDE, de conformidad con el "Haz una cosa"principio. (Esto en lugar de "editor como IDE").
Respuesta4
Agregue trap "" SIGTSTP
su guión. Captará la señal y la ignorará.
#!/bin/bash
trap "" SIGTSTP
watch date