| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1624 人关注过本帖
标题:[求助]请协助看看这个语句的输出对不对
只看楼主 加入收藏
卜酷塔2
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-3-29
收藏
 问题点数:0 回复次数:3 
[求助]请协助看看这个语句的输出对不对
count2.py
#! /usr/bin/python
import os
import sys
import subprocess
import time

input='ps -ef | grep ' + sys.argv[1] +' | grep -v grep | wc -l'
a=os.popen(input).read()
time.sleep(1)
b=os.popen(input).read()
c= int(a) + int(b)
print a,b,c

说明如下:
该语句为查询系统中是否存在某个进程,如果存在返回1,输出两个返回值相加结果
存在问题:
执行该代码添加一个不存在的进程时,a,b均显示1(应该显示0),是我的逻辑有问题,还是写法有问题。



搜索更多相关主题的帖子: 查询系统 
2017-03-29 09:57
卜酷塔2
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-3-29
收藏
得分:0 
太冷清了吧。
使用commands问题依旧
另:
python编辑器中返回结果正常
跑脚本出现问题。

#! /usr/bin/python
import os
import sys
import subprocess
import time
import commands

x=sys.argv[1]
print x
input='ps -ef |grep '+str(x)+' | grep -v grep | wc -l'
print input
a=commands.getoutput(input)
print "this is a",a
time.sleep(1)
b=commands.getoutput(input)
print "this is b",b
c= int(a) + int(b)
print c
2017-03-29 12:42
test3026
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-4-6
收藏
得分:0 
太冷清了吧。
使用commands问题依旧
另:
python编辑器中返回结果正常
跑脚本出现问题。

#! /usr/bin/python
import os
import sys
import subprocess
import time
import commands

x=sys.argv[1]
print x
input='ps -ef |grep '+str(x)+' | grep -v grep | wc -l'
print input
a=commands.getoutput(input)
print "this is a",a
time.sleep(1)
b=commands.getoutput(input)
print "this is b",b
c= int(a) + int(b)
print c
2017-04-06 15:42
sunb3
Rank: 2
来 自:北京
等 级:论坛游民
威 望:3
帖 子:34
专家分:94
注 册:2017-4-20
收藏
得分:0 
input是关键字,还是避免被挪作他用吧……
你这个是因为os.popen打开的是管道,管道也是一行,所以wc -l肯定要多记一行的数,最简单的改法:

程序代码:
#! /usr/bin/python
import os
import sys
import time

cmd='ps -ef | grep ' + sys.argv[1] +' | grep -v grep | wc -l'
a=int(os.popen(cmd).read())-1
b=int(os.popen(cmd).read())-1
c= a + b
print(a,b,c)


另外我个人认为这个最好还是用bash写……

除了基础……我什么都不会……
2017-04-24 13:27
快速回复:[求助]请协助看看这个语句的输出对不对
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017065 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved