Я хочу выполнить некоторую последовательность команд ssh с помощью скрипта Python, как показано ниже, (и хочу отобразить вывод последней команды)
ssh hostname
sudo su userdb
cd /some/path/
./script_file -D option
Я пробовал с subprocess.Popen (each_command_from_list).
Но он застревает после подключения к имени хоста с помощью ssh.
import subprocess
commands = ["ssh hostname", "sudo su userdb", "cd /some/path/", "./script_file -D option"]
for cmd in commands:
process = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
proc_stdout = process.communicate()[0].strip()
if cmd.startswith("./script_file"):
print(proc_stdout)
Я полагаю, сценарий должен подключиться к имени хоста с помощью ssh, а затем запустить команды на этом хосте и получитьрезультаты.