как использовать exit внутри здесь doc

У меня есть сценарий, когда я использую несколько ssh-соединений внутри HEREDOC, например:

ssh -A -tt -l user 192.168.1.2 <<EOF ping server1 -c3 ssh server2 nslookup www.gogole.com exit ssh server3 ifconfig exit EOF 

однако, когда я использую exit внутри EOF, он перестает обрабатывать скрипт вместо выхода из сеанса SSH, любая идея / трюк, как я могу выйти из сеанса ssh вместо всего скрипта?

 #'~.' - terminate session - doesn't work unfortunately 

2 Solutions collect form web for “как использовать exit внутри здесь doc”

Если вы хотите придерживаться здесь документа

 ssh -A -tt -l user 192.168.1.2 <<EOF ping server1 -c3 ssh server2 <<foobar1 nslookup www.gogole.com more commands exit foobar1 ssh server3 <<foobar2 ifconfig more more commands exit foobar2 EOF 
  • вы можете использовать любое слово, чтобы закрыть здесь документ.
  • deleimiter должен начать линию.
  • или используйте <<-word
 ssh -A -tt -l user 192.168.1.2 <<EOF ping server1 -c3 ssh server2 nslookup www.gogole.com ssh server3 ifconfig EOF 

Команда ssh выйдет, когда закончит выполнение заданных команд.

Для нескольких команд используйте sh -c :

 ssh -A -tt -l user 192.168.1.2 <<EOF ping server1 -c3 ssh server2 sh -c 'nslookup www.gogole.com; echo done' ssh server3 sh -c 'ifconfig; df -k' EOF 

Если на серверах2 и server3 есть несколько основных вещей, создайте сценарии на этих серверах и запустите их.

  • Сценарий удаленного резервного копирования SSH
  • Как сделать снимок экрана / dev / pts?
  • Правило iptables для передачи UDP через туннель SSH
  • Обнаружение пересылки агента SSH
  • Заблокирована машина Ubuntu
  • Как отлаживать пересылку портов SSH
  • Сохранение процесса, запускающегося после закрытия оболочки, порожденной идеей
  • Ошибка туннелирования SSH: «канал 1: сбой при открытии: административно запрещено: открыть сбой»
  • Захват stdout из сеанса ssh на локальную машину
  • Разный каталог входа ssh из дома пользователя
  • Как включить автозаполнение удаленных путей при использовании scp?
  • SSH-туннелирование терпит неудачу с «административно запрещено: open failed»
  • Interesting Posts

    Включая .bash_profile через ssh

    Условно установите раздел Windows

    Регистрация полных путей к печатным файлам в CUPS

    Какова цель отложенного приостановления (Ctrl-Y) в Bash?

    Как обеспечить, чтобы скрипт bash выполнялся через сеть, не будучи в каталоге / cgi-bin?

    Файловая система экспорта NFS

    Как я могу выполнить сканирование на поверхности диска и исправить / перераспределить поврежденные сектора в Linux из командной строки?

    Список всех файлов под разными папками с одинаковым именем

    Направление старой символической ссылки на другое место

    У меня установлена ​​последняя версия hping3, но Bash говорит, что «команда не найдена»

    Эквивалент POSIX для тайм-аута GNU?

    Статистика ввода / вывода для каждого пользователя

    Как эффективно выражать переменные для SED?

    Неудачное изменение зависимостей для растягивания

    Возможно ли иметь общее количество нет. блоков, снятых одними и теми же файлами, будут отличаться на двух ПК?

    Linux и Unix - лучшая ОС в мире.