免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1800 | 回复: 9
打印 上一主题 下一主题

求助!查了一天都没有搞定 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-02-14 17:48 |只看该作者 |倒序浏览
小弟刚学python.遇到了一个问题,找了一天的方法解决都没有行。而且这个问题也百思不得其解

程序目的:用python实现从本机取一些信息,然后远程传递到另外一个机器上。

现状:在本机上取信息的程序都执行没有问题,就是最后两行,调用expect脚本实现远程无交互scp的时候有问题了。

问题描述:
1.执行py脚本,可以把本机的指定文件传到远程机器上,但是问题来了。就是传过去的文件只有第一行,而且文件大小是229B,传过去的只有14B。
   代码如下:
            代码就是os.popen("xxxxxxxx/cpcp.exp xxxxxxxx")。
    请注意,
             1.我自己在把这行代码拿出来,创建了一个新的python脚本执行,没有问题。scp的文件过去是229B大小。
             2.在源程序上换成os.system执行情况一样。也是传过去的文件只有14B。

我在scp之前的代码,基本上很简单,就是一些字符串的处理,然后存入到指定文件中。 单独执行也没有问题。


希望大家帮忙解答一下。  为什么总是不能传递整个大小的文件过去呢?!
谢谢

论坛徽章:
0
2 [报告]
发表于 2012-02-14 23:33 |只看该作者
up

论坛徽章:
0
3 [报告]
发表于 2012-02-15 09:59 |只看该作者
up

论坛徽章:
0
4 [报告]
发表于 2012-02-15 10:08 |只看该作者
简单的用shell不就行了,还用python吗

论坛徽章:
0
5 [报告]
发表于 2012-02-15 10:14 |只看该作者
想学习一下python,找个简单的练习一下,结果就遇到了这个问题了。很费解

论坛徽章:
0
6 [报告]
发表于 2012-02-15 10:22 |只看该作者
在做这个操作时两台主机上看看日志文件:
/var/log/messages
/var/log/secure

论坛徽章:
0
7 [报告]
发表于 2012-02-15 10:45 |只看该作者
看了/var/log/messages,没有发现异常

论坛徽章:
0
8 [报告]
发表于 2012-02-15 13:11 |只看该作者
os.popen()是打开文件的吧,要是在python调用scp,我是用subprocess.call或者subprocess.Popen(),建议把代码粘上来看看

论坛徽章:
0
9 [报告]
发表于 2012-02-15 17:59 |只看该作者
你这个应该是用os.system()函数..

论坛徽章:
0
10 [报告]
发表于 2012-02-16 10:40 |只看该作者
本帖最后由 askandstudy 于 2012-02-16 10:51 编辑

我用os.system()试了没问题
test link

后来又用subprocess模块试了也没问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP