выйдите из всех соединений SSH в одной команде и закройте PuTTY
Есть ли способ отступить от всех соединений SSH и закрыть PuTTY в «одном выстреле»? Я работаю в Windows 7 и использую PuTTY для SSH для различных хостов Linux.
Пример того, как я себя работаю:
- Почему Quickbooks работает с Ubuntu, но не с Fedora?
- Сопоставление путей Windows к путям Linux для VirtualBox
- Grub 2 - попытка загрузки в «загрузчик Windows» загружает меня обратно в grub
- Установка Fedora 23 рядом с Windows 10; Раздел EFI недействителен
- Какой формат в офисной либерре писатель выбрать, чтобы опустить проблемы при открытии слова на окнах?
SSH to host1 with PuTTY... banjer@host1:~> #...doin some work...ooh! need to go check something on host8... banjer@host1:~> ssh host8 banjer@host8:~> #...doin some work...OK time for lunch. lets close putty... banjer@host8:~> exit banjer@host1:~> exit Putty closes.
Наверху, любой способ получить от host8 до закрытия PuTTY одним выстрелом? Иногда я нахожусь до 5 или 10 хостов глубоко. Я понимаю, что я могу щелкнуть X, чтобы закрыть окно PuTTY, но мне нравится, чтобы мои соединения SSH закрывались должным образом, используя команду exit. Я также понимаю, что я прошу советов о том, как увеличить лень. Я просто напишу это как «как я могу быть более эффективным».
- Двойная загрузка Ubuntu и Windows 8. w8 загружается через оболочку grub, но не из меню
- FreeBSD и Windows показывают разные времена
- Asus G750JH с предустановленной Windows 8 - я хочу с двойной загрузкой ArchLinux
- Будет ли перенос репозитория SVN репозитория из Linux в ОС Windows вызовет проблемы с EOL?
- VNC-сервер Centos7 VNC-клиент Windows 10
- Какое устройство для установки загрузчика следует выбрать?
- Как я должен использовать Bash для Ubuntu в среде Windows?
- Переключатель Qubes OS из Windows
6 Solutions collect form web for “выйдите из всех соединений SSH в одной команде и закройте PuTTY”
Попробуйте использовать escape-последовательность завершения ssh
.
В сеансе ssh
введите ~.
(тильда). Вы не увидите символов при вводе их, но сеанс немедленно прекратится.
$ ~. $ Connection to me.myhost.com closed.
От man 1 ssh
The supported escapes (assuming the default '~') are: ~. Disconnect. ~^Z Background ssh. ~# List forwarded connections. ~& Background ssh at logout when waiting for forwarded connection / X11 sessions to terminate. ~? Display a list of escape characters. ~B Send a BREAK to the remote system (only useful for SSH protocol version 2 and if the peer supports it). ~C Open command line. Currently this allows the addition of port forwardings using the -L, -R and -D options (see above). It also allows the cancellation of existing remote port-forwardings using -KR[bind_address:]port. !command allows the user to execute a local command if the PermitLocalCommand option is enabled in ssh_config(5). Basic help is available, using the -h option. ~R Request rekeying of the connection (only useful for SSH protocol version 2 and if the peer supports it).
Просто нажмите Ctrl D, и он выберет вас там для удержания ctrl и нажмите «d», пока окно не исчезнет.
Просто закройте PuTTY. ( Alt + F4 по умолчанию IIRC.)
Другой способ – сделать function
для ssh
:
function ssh(){ /usr/bin/ssh $@ ; exit ; }
К сожалению, он также всегда будет закрывать соединение и выйти из консоли после завершения работы с удаленной системой.
Обратите внимание, что вам нужна такая функция на всех ваших серверах, иначе этот хак не будет работать. Btw вы всегда можете поместить функцию в ~ / .bashrc или ~ / .whatever_shell_you_use_rc.
Это выглядит немного грязным взломом по сравнению с тем, что у Утер.
Если вы не возражаете сделать небольшой скрипт, вы можете это сделать.
Сценарий: myssh.sh
#!/bin/bash ssh $1 if [ $? -eq 5 ]; then exit 5 fi
Вызов через команду dot:
$ . myssh user@server.com
Если вы хотите выйти из одного уровня:
$ exit
Если вы хотите выйти из всего:
$ exit 5
Или вы можете использовать exec
для замены процесса оболочки ssh
при переходе на другой хост:
SSH to host1 with PuTTY... banjer@host1:~> #...doin some work...ooh! need to go check something on host8... banjer@host1:~> exec ssh host8 banjer@host8:~> #...doin some work...OK time for lunch. lets close putty... banjer@host8:~> exit Putty closes.
5 уровней недостаточно, так как трафик пройдет через все остальные серверы. Из-за этого я не рекомендую просто убивать PuTTY или ssh (~.), Поскольку (в зависимости от того, что вы делаете) это может привести к сиротским процессам на серверах.
Лучше попробовать и быть менее «ленивым». Щелкните правой кнопкой мыши на панели заголовков puttys, чтобы быстро открыть новый сеанс. Если у вас есть сервер «по умолчанию» и вы принимаете 1 переход от этого, функция «Дублировать сеанс» очень полезна. Особенно при использовании проверки подлинности с помощью панели.