今天在写一个Python脚本时遇到一个问题——同样的代码,在Python终端执行没问题,在脚本里执行却不行,就是下面这段代码:

import pexpect

password = 'test2014'

p = pexpect.spawn('scp test.tgz root@192.168.1.200:/home/backup/')
index = p.expect(['password', 'yes/no'])
if index == 0:
p.sendline(password)
else:
p.sendline('yes')
p.expect('password')
p.sendline(password)

读者如果不信的话可以对以上代码进行修改测试。

最后,通过百度,我找到了解决方法——就是在末尾加一行,最终的代码如下:

import pexpect

password = 'test2014'

p = pexpect.spawn('scp test.tgz root@192.168.1.200:/home/backup/')
index = p.expect(['password', 'yes/no'])
if index == 0:
p.sendline(password)
else:
p.sendline('yes')
p.expect('password')
p.sendline(password)
p.read()

为什么要加这一行才能成功,我还解释不了,有能人能解释的请直接回复本帖,谢谢。

最新文章

  1. Android NDK开发实例教程
  2. skiplist
  3. 将Mininet与真实网络相连接
  4. nginx fastcgi buffers影响页面输出数据大小记录
  5. Java通过Axis2发布WebService
  6. jquery html5 file 上传图片显示图片
  7. 工控随笔_17_西门子_WinCC的VBS脚本_06_过程和函数
  8. tyvj/joyoi 1336 火车进栈
  9. 史上最简单的SpringCloud教程 | 第四篇:断路器(Hystrix)
  10. Ubuntu yindaoxiufu 引导修复(Boot Repair)
  11. 4.ClassLink - 一种新型的VPC 经典网络的连接方式
  12. android scheme打开天猫,淘宝
  13. 关于ESP8266EX的一些资料
  14. OpenStreetMap地图数据介绍(转)
  15. MathExamV2.0四则混合运算计算题生成器
  16. Eclipse里选中一个变量后,这个类里的该变量不变色了?
  17. up7.1-asp.net-本地测试教程
  18. [译]理解Windows消息循环
  19. Python的open函数
  20. 《从零开始学Swift》学习笔记(Day48)——类型检查与转换

热门文章

  1. unity发布自定义分辨率
  2. django 增删改查操作 数据库Mysql
  3. 聊一聊session
  4. 【QT】常用类
  5. 352[LeetCode] Data Stream as Disjoint Intervals
  6. solidity 智能合约操作
  7. Linux 添加虚拟网卡
  8. 使用Promise链式调用解决多个异步回调的问题
  9. jQuery File Upload文件上传插件简单使用
  10. 在用js拼接html时,给元素加不上事件的问题