відключити вікно CTRL-D, закрити термінатор (термінальний емулятор)


46

Я часто входжу через декілька сеансів SSH. Щоб вийти з моїх сеансів, я натискаю CTRL+ d, доки не повернусь на свою локальну машину.

Однак іноді я натискаю раз занадто багато, і мій термінал виходить.

Чи є спосіб заблокувати CTRL+ dзакрити мій термінал?

Я використовую термінатор як свій емулятор терміналу




Дивіться це запитання для Zsh.
rgov

Відповіді:


50

Ви також можете відключити eof взагалі в bash:

set -o ignoreeof


2
Але якщо ви зробите це без розбору, воно буде застосовано і при вході в систему через ssh.
Жил 'ТАК - перестань бути злим'

3
Я використовую термінатор 0,97. Коли я встановлюю -o ignoreeof, він блокує ctrl-d (не виходить) 10 разів із повідомленням: Використовуйте "exit", щоб залишити оболонку. На 11 ctrl-d він виходить.
AAAfarmclub

OMG, дякую !! Це (випадкове замикання терміналів) було для мене величезним роздратуванням. Додано до ~ / .bashrc; працює в консолі | xfce4-термінал | ... :-D
Вікторія Стюарт

@Gilles Хороший внесок, чи є у вас рішення для цього?
Готьє

34

Ви можете використовувати IGNOREEOFзмінну середовища в bash. Отже, export IGNOREEOF=42і вам доведеться натискати Ctrl+Dсорок два рази, перш ніж він фактично закриє вашу оболонку.

POSIX також setмає -o ignoreeofналаштування.


4
Сорок три рази: перші сорок два ігноруються, а останній фактично припиняється. :-)
дельтаб

Я вважав, що сорок три рази буде надто зайвим. Однозначно set -o ignoreeofбуло б більш практичним
ryekayo

3
Але якщо ви зробите це без розбору, воно буде застосовано і при вході в систему через ssh.
Жил 'ТАК - перестань бути злим'

Але ви повинні писати команду щоразу, коли ви відкриваєте термінал. Як вимкнути цю програму назавжди?
MycrofD

2
@MycrofD Додайте це до свого .bashrcабо .profile.
Ян Вархол
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.