desativar janela CTRL-D fechar no terminador (emulador de terminal)


46

Costumo fazer logon em várias sessões SSH. Para sair das minhas sessões, pressione CTRL+ d, até retornar à minha máquina local.

No entanto, às vezes pressiono muitas vezes e meu terminal sai.

Existe uma maneira de bloquear CTRL+ dde fechar meu terminal?

Estou usando o terminator como meu emulador de terminal




Veja esta pergunta para Zsh.
rgov 9/07

Respostas:


50

Você também pode desativar o eof geralmente no bash:

set -o ignoreeof


2
Mas se você fizer isso indiscriminadamente, isso se aplicará ao fazer login no ssh também.
Gilles 'SO- stop be evil'

3
Estou usando o terminador 0,97. Quando eu defino -o ignoreeof, ele bloqueia ctrl-d (não sai) 10 vezes com uma mensagem: Use "exit" para sair do shell. No 11º ctrl-d, ele sai.
precisa saber é o seguinte

OMG, obrigado !! Isso (cloures terminais acidentais) foi um enorme aborrecimento para mim. Adicionado ao ~ / .bashrc; trabalha no konsole | terminal xfce4 | ... :-D
Victoria Stuart

@Gilles Boa contribuição, você tem uma solução para isso?
Gauthier

34

Você pode usar a IGNOREEOFvariável de ambiente no bash. Então, export IGNOREEOF=42você terá que pressionar Ctrl+Dquarenta e duas vezes antes que realmente saia do seu shell.

O POSIX também settem uma -o ignoreeofconfiguração.


4
Quarenta e três vezes: os primeiros quarenta e dois são ignorados e o último realmente sai. :-)
deltab

Imaginei que quarenta e três vezes seria redundante demais. Definitivamente o set -o ignoreeofseria mais prático
ryekayo

3
Mas se você fizer isso indiscriminadamente, isso se aplicará ao fazer login no ssh também.
Gilles 'SO- stop be evil'

Mas você precisa escrever o comando toda vez que abre um terminal. Como você desativa isso permanentemente?
MycrofD

2
@MycrofD Adicione isso ao seu .bashrcou .profile.
Jan Warchoł
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.