LINUX.ORG.RU

Аналог ^] q для ssh

 ,


1

3

Если telnet сессия зависает или ждет таймаут подключения ее можно быстренько завершить через ^] q.
Есть что-то похожее у ssh?

Знаю два выхода, но оба по удобства не дотягивают до ^] q:
* Найти нужный ssh процесс в ps и убить
* ~. - срабатывает не всегда и если по ssh подключился к серверу и уже в нем к другому ssh (который зависает), то убивает первую сессию (а нужно вторую)

Что есть еще?

★★★

Последнее исправление: Kolins (всего исправлений: 1)

~. - срабатывает не всегда

Он может не срабатывать если задержка между ~ и . слишком большая. Либо ты сам медленно тыкаешь в кнопки, либо софтина (эмулятор терминала) не успевает обрабатывать ввод достаточно быстро и передавать его процессу ssh.

если по ssh подключился к серверу и уже в нем к другому ssh (который зависает), то убивает первую сессию (а нужно вторую)

Использовать разный escape character для разных (вложенных) ssh. У ssh(1) есть флаг -e, принимающий аргументом символ, который будет считаться escape char для данного конкретного инстанса.


На QWERTY ~ и . расположены на противоположных углах клавиатуры, что нифига не эргономично. На Dvorak Simplified они находятся под одной рукой (и тоже не могут быть нажаты случайно).

mord0d ★★★★★
()
Последнее исправление: mord0d (всего исправлений: 1)
Ответ на: комментарий от Kolins

написал же, что знаю про это сочетание, но оно работает не так как у telnet

Ровно так же оно работает, только ~ принимается после newline и есть тайм-аут, а если нужно отправить ssh внутри ssh, то нужно ~~ использовать.

ivlad ★★★★★
()
Последнее исправление: ivlad (всего исправлений: 1)
Ответ на: комментарий от Kolins

Перед первым ~ должен быть перевод строки. И этот перевод строки - не спецсимвол, он будет штатно отправлен на ту сторону. Но если она всё равно зависла, тебя это не должно волновать.

firkax ★★★★★
()