Я видел подобные вопросы в Интернете, но ни один из ответов не работает, надеясь, что новый запрос покажет ответ.ssh session не будет закрываться после запуска удаленной команды
Я пытаюсь запустить удаленный запрос в окне linux, который я могу решить, я остаюсь на связи с удаленным сервером.
Я установил -x в сценарии, поэтому я смотрю вывод. часть моего сценария ниже
ssh -tt $host.digital.domain.com << EOF
sudo su - foo
/apps/scripts/bar.sh
exit
EOF
скрипт работает правильно
[[email protected] ~]$ [[email protected] ~]$ + rm -f '/tmp/files*'
однако окно затем дает мне приглашение на удаленном компьютере, вместо того, чтобы выходить.
[[email protected] ~]$
я использовал -tT переключатель, как я получаю ошибку терминальной я также пытался убить Идентификатор, но это не работает либо. Единственный способ проработать сценарий - это «ctrl c» для выхода из удаленного сеанса.
Я попытался запустить ssh все это на одной линии, но это не сработало, возможно, из-за sudo, я не уверен.
Любые советы были бы замечательными.
благодаря
Привет fbohorquez, я попробовал это в его все еще удерживающий сессию. SSH -tt $ host.digital.domain.com << EOF Sudo су - Foo /apps/scripts/copy_files.sh выход выход выход EOF + гт/приложения/скрипты/files2copy + выход 0 Вы есть новая почта в/var/spool/mail/ams [foo @ host ~] $ Убито сигналом 2. – user3615267
Так что это как-то связано с запуском скрипта и временем, которое требуется для завершения. Если скрипту не нужно запускать, то выход отлично работает --- [user @ host1 ~] $ [foo @ host1 ~] $ [foo @ host1 ~] $ [user @ host1 ~] $ Подключение к host1.digital.domain .com закрыто. Однако, если скрипт необходим, сеанс остается открытым. [foo @ host2 ~], поэтому мне нужно выработать задержку между запуском скрипта и командой exit – user3615267
Вы можете использовать «sleep» для задержки между запуском скрипта и командой exit. Также вы можете использовать «wait» для ожидания завершения процесса. Возможно, вы можете использовать «setsid» для сценария запуска в другом сеансе bash или «nohup», поскольку не отправляйте сигнал SIGHUP при выходе. – fbohorquez