ATUALIZAR:

ATUALIZAR:

Às vezes acontece comigo que pressiono CTRL+ Zpor acidente e meu aplicativo desaparece em segundo plano. Eu sei, posso trazê-lo de volta fg, então não é grande coisa. Mas estou pensando em desligar isso job controlde qualquer maneira. Em toda a minha vida, não consigo me lembrar de nenhum momento em que precisei, apenas me parece uma relíquia do passado.

Posso desativar job controltotalmente? Ou estou faltando alguma coisa e esse recurso pode ser útil? Como eu iria desativá-lo no meu.bashrc

ATUALIZAR:

Eu tentei set +mconforme sugerido por @Falsenames. No entanto, isso só funciona quando eu digito no terminal. Adicionar set +mao meu .bashrcnão tem efeito.

Responder1

Você pode adicionar o seguinte em sua linha de comando para parar de usar o modo de monitoramento.

definir +m

Se você realmente precisar da funcionalidade ctrl-z posteriormente, basta digitar 'set -m' para ativar o monitoramento dessa sessão.

Decara, festa. Observe que isso é para '-m', com "+m" alternando essa configuração para desabilitar.

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 esforço, você pode querer compilar manualmente uma versão do bash sem o sinalizador "--enable-job-control". Aqui está um rápidoguia de instalaçãodo GNU. Se você optar por seguir esse caminho, NÃO substitua /bin/bash apenas no caso de processos em segundo plano serem executados através do bash expect job control. Em vez disso, crie um /bin/bash.alt ou outro arquivo. Seu shell padrão pode ser alterado para este alternativo executando usermod ou editando /etc/passwd como root.

Responder2

stty susp undefdesativará o sinal de suspensão iniciado pelo teclado para a maioria dos programas; no entanto, comandos como vim e emacs que possuem ligações específicas Ctrl-Zterão que ser reconfigurados individualmente. No emacs, você pode executar (global-unset-key "\C-z").

Você pode adicionar esse comando stty ao seu ~/.bash_profileou ~/.profile, sair, fazer login novamente.

Responder3

Ou estou faltando alguma coisa e esse recurso pode ser útil?

Para responder a esta parte da pergunta: Cz/ fgcombo é essencial para meu fluxo de trabalho no vim. Por exemplo, eu prefiro Cz >> git commita fgusar wrappers git de dentro do vim.

Cz ajuda a tratar o shell como IDE, em conformidade com o "faça uma coisa"princípio. (Isso em vez de "editor como IDE").

Responder4

Adicione trap "" SIGTSTPem seu script. Ele captará o sinal e o ignorará.

#!/bin/bash
trap "" SIGTSTP
watch date

informação relacionada