Найти - Пользователи
Полная версия: Помогите с работой в shell
Начало » Python для новичков » Помогите с работой в shell
1
evilempirer
Есть необходимость раскидать профиль по множеству серверов, думаю сделать это так
pipe = os.popen('scp ~/.bashrc username@webxx:~/'), но соответственно при подключении впервые к ферме или после рехеша ключей выводится предложение получить ключ от сервера, а потом соответственно надо ввести пароль, пробовал модуль paramiko но AutoAddPolicy() там не срабатывает и как реализовать ввод пароля ? Или вообще отказаться от такой идеи и попробовать распространить через ftp ?
Enchantner
Советую использовать модуль subprocess, это замена устаревшему os.popen(), и с его помощью можно легко отправить процессу команды, сымитировав ввод пользователя.
Ed
pexpect для этого существует.
Читать тут: http://linux.byexamples.com/archives/346/python-how-to-access-ssh-with-pexpect/
evilempirer
Парамико заработал, с этим все ок, но когда пытаюсь выполнять команды, будь-то субпроцесс или ос, питон почему то пытается вызвать sh интерпретатор, соответственно везде стоит баш и вылетает с ошибкой /bin/sh: fetch command not found
evilempirer
спасибо всем за помощь, решилось функцией встроенной в парамико .exec_command()
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB