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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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?