Выполнение сценария оболочки для удаленного запуска скрипта python, но без остановки для запросов

#bash #ssh

#bash #ssh

Вопрос:

Выполнение скрипта python, расположенного на удаленном компьютере. Скрипт Python запрашивает опцию. При запуске с использованием следующего кода выполнение завершается остановкой / приостановкой для запроса.

 ssh -t xyz@111.111.111.111 << EOF
    python script.py --user username --password pwrd --option xyzlmn
EOF
  

Комментарии:

1. Какой параметр запрашивает у вас скрипт?

Ответ №1:

Ваш скрипт python хочет считывать данные из своего stdin.

Он получает свой стандартный идентификатор из ssh.

ssh был настроен так, что его stdin является heredoc (EOF..EOF).

Итак, python пытается прочитать из heredoc, но читать нечего.

Вместо этого передайте команду python в качестве аргументов в ssh, чтобы stdin ssh по-прежнему оставался tty:

 ssh xyz@111.111.111.111 '
    python script.py --user username --password pwrd --option xyzlmn
'