pexpect a la place de expect
Bonjour,
Je cherche à remplacer un petit programme pour se connecter à un serveur en ssh avec la fameuse commande expect, en la remplacant par pexpect:
avec expect:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
#!/usr/bin/expect -f
set verbose -1
set server [lindex $argv 0 ]
set user [lindex $argv 1 ]
set password [lindex $argv 2 ]
set command [lindex $argv 3]
spawn ssh -o UserKnownHostsFile=ssh/known_hosts $user@$server
match_max 100000
expect {
"Are you sure you want to continue connecting*" {exp_send -- "yes\r"; exp_continue}
"*?assword:*" {exp_send -- "$password\r"; exp_continue}
"*~#*" {exp_send -- "\r"}
}
expect "*~#*" |
j'ai commencer un programme avec pexpect mais je seche grave
pexpect:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
#!/usr/bin/env python
import pexpect
import getpass
import sys
server = sys.argv[1]
user = sys.argv[2]
password = sys.argv[3]
command = sys.argv[4]
SSH_NEWKEY = '(?i)are you sure you want to continue connecting'
child = pexpect.spawn('ssh -o %s %s' %(user,server))
........ |
si quelqu'un pourrait m'orienter svp?