- 主题:通过pexpect用scp命令发送大文件,总是提示timeout
【 在 lcgogo 的大作中提到: 】
: 用scp还不如rsync
:
我查一下
--
FROM 36.112.24.*
paramiko应该比pexpect好
--
FROM 180.166.45.*
小文件有问题吗
【 在 nokia0125 的大作中提到: 】
: 对,我已经发送密码成功了,有认证消息交互,
: 就是传输正式文件时候,提示超时,
--
FROM 124.126.5.*
【 在 ydh935 的大作中提到: 】
: paramiko应该比pexpect好
ok,我好好看一下
--
FROM 223.72.81.*
【 在 tinytoon 的大作中提到: 】
: 小文件有问题吗
只要是scp命令就不行,
但是iperf命令就OK
--
FROM 223.72.81.*
【 在 wincss 的大作中提到: 】
: 你用 pexpect 输入密码吧,输入密码的时候匹配了 root@ip: 这个吧?
: 然后你 scp 命令,是不是也是这个结尾。。。
: 然后 pexpect 觉得他应该出来帮你输入个密码,然后等着下一步,结果没等到超时了
: ...................
这个问题的关键还是在用scp传输大的文件,同样的方式,iperf命令就能正常发送出去,用的一套pexpect代码
--
FROM 36.112.24.*
你也不贴代码,你自己也没有调试能力。。。
这么多天过去了你除了研究出来scp和iperf不一样这一个现象之外有啥进展?
【 在 nokia0125 (二过头) 的大作中提到: 】
: 这个问题的关键还是在用scp传输大的文件,同样的方式,iperf命令就能正常发送出去,用的一套pexpect代码
--
FROM 114.242.94.*
【 在 wincss 的大作中提到: 】
: 你也不贴代码,你自己也没有调试能力。。。
: 这么多天过去了你除了研究出来scp和iperf不一样这一个现象之外有啥进展?
:
好的,等我整理代码,我现在也在梳理我的代码
--
FROM 223.72.37.*
【 在 wincss 的大作中提到: 】
: 你也不贴代码,你自己也没有调试能力。。。
: 这么多天过去了你除了研究出来scp和iperf不一样这一个现象之外有啥进展?
:
self.child = pexpect.spawn(ssh_start_cmd, env=os.environ,use_poll=True)
ssh_start_cmd: /usr/bin/ssh -p 22 root@10.20.14.117
index = self.child.expect(ptnlist,timeout=timeout)
其中ptnlist:ptnlist = [pexpect.EOF, pexpect.TIMEOUT,[root@.*]]正常期待是ptnlist最后一项,但是触发了pexpect.TIMEOUT,具体代码如下:
elif index == 1:
tomsg = ('Try to expect %s failed '
'pexpect hit TIMEOUT.'
% ptn)
self.caselog.debug_print_level1(tomsg)
然后,我要发送的scp命令如下:bin/scp /dev/test.img root@ip:/dev/null
--
FROM 36.112.24.*
我从第一个回答就说了。。。。
你那个 root@.* 不止能匹配到输入密码,也能匹配到 scp 这句话
你没看见?这都快一个星期了,还没反应过来是咋回事?
【 在 nokia0125 (二过头) 的大作中提到: 】
: self.child = pexpect.spawn(ssh_start_cmd, env=os.environ,use_poll=True)
: ssh_start_cmd: /usr/bin/ssh -p 22 root@10.20.14.117
: index = self.child.expect(ptnlist,timeout=timeout)
: 其中ptnlist:ptnlist = [pexpect.EOF, pexpect.TIMEOUT,[root@.*]]正常期待是ptnlist最后一项,但是触发了pexpect.TIMEOUT,具体代码如下:
: elif index == 1:
: tomsg = ('Try to expect %s failed '
: 'pexpect hit TIMEOUT.'
: % ptn)
: self.caselog.debug_print_level1(tomsg)
: 然后,我要发送的scp命令如下:bin/scp /dev/test.img root@ip:/dev/null
root@.*
--
FROM 114.242.94.*