位置: 编程技术 - 正文

Python实时获取cmd的输出(python怎么获取命令行参数)

编辑:rootadmin

推荐整理分享Python实时获取cmd的输出(python怎么获取命令行参数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python操作cmd,python操作cmd,python操作cmd,python怎么获取命令行参数,python 获取cmd结果,python获取电脑信息,python怎么获取命令行参数,python怎么获取命令行参数,内容如对您有帮助,希望把文章链接给更多的朋友!

最近发现一个问题,一个小伙儿写的console程序不够健壮,监听SOCKET的时候容易崩,造成程序的整体奔溃,无奈他没有找到问题的解决办法,一直解决不了,可是这又是一个监控程序,还是比较要紧的,又必须想办法解决。

(这是要搞死我的节奏啊....)由于个人不太懂他用的语言,只能在程序外围想办法。

环境描述:

1. 目标程序执行时会监听端口,TCP,并在每一次client连接后通过console输出client的IP地址。

2. 监听不是一次性完成的,而是一直监听,程序并不会退出

3. 为了监控需要,最好能对连接的IP进行排序,整理。

P.S. 系统基于windows平台。

想起来做监控程序,简单点比较好,于是想到了Python。

我的预想逻辑是这样的,通过python检测目标程序是否崩了,如果中标就启动目标程序,并进行监控,每输出一次,python进行一次数据运算整理,然后循环。

第一步,先搞定输出的捕获问题。

我用netstat -a替代那个需要持续输出的程序,执行程序,发现程序和想象的不太一样,确实是实时获得数据了,但是感觉总是有点不太和谐,不管了,继续。

第二步,解决监控程序的问题

Python实时获取cmd的输出(python怎么获取命令行参数)

程序或者还是死的,有一点非常关键,就是监听端口,那只要检测一下端口就行了。三个办法:

1. 找端口检测的API

2. 连接一次目标端口,通了就是活的

3. netstat

第一种方法需要去找找有没有相关的API,第二种方法容易对目标程序的正常运行造成问题,第三种我想都没想就用了吧。这里需要用到cmd的重定向功能

netstat -an获得当前的端口监听情况,“|”将netstat的输出重定向到findstr函数

netstat -an | findstr "" 查找有端口的地址行,有就说明活着,否则就是挂了。

最后一步,整合

然后发现有问题,程序完全不会定时检测,只会卡在readline()上。

各种找问题,发现那个process.stdout.readline()是个同步方法,没结果就不返回。有没有的能异步的方法?

有人用fnctl,windows不支持,pass

asyncio?看了半天没太明白...

折腾了半天,最后关头我还是用c#解决这个问题了....

参考代码见

分享Python字符串关键点 字符串是Python中最常用的数据类型。我们可以使用引号来创建字符串。python字符串关键点有下面几点:1.一些引号分隔的字符你可以把字符串看出是Python

Python中内置数据类型list,tuple,dict,set的区别和用法 Python语言简洁明了,可以用较少的代码实现同样的功能。这其中Python的四个内置数据类型功不可没,他们即是list,tuple,dict,set。这里对他们进行一个简明

Python学习笔记整理3之输入输出、python eval函数 1.python中的变量:python中的变量声明不需要像C++、Java那样指定变量数据类型(int、float等),因为python会自动地根据赋给变量的值确定其类型。如radius=

标签: python怎么获取命令行参数

本文链接地址:https://www.jiuchutong.com/biancheng/379939.html 转载请保留说明!

上一篇:深入源码解析Python中的对象与类型(python 源码解析)

下一篇:分享Python字符串关键点(python字符串大全)

  • 递延所得税计算表模板
  • 公司购买金蝶属于什么费用
  • 油票发票怎么查真伪
  • 个税申报填写的工资是应发还是实发
  • 认缴出资怎么填财务报表
  • 购入固定资产一次性扣除
  • 大病医疗保险能税前扣除吗
  • 错账更正分录
  • 技术转让费怎么定价
  • 项目部建筑施工筹建期会计账务处理
  • 公司车辆过户给公司
  • 土地房产税征收范围
  • 地税三方协议是什么意思
  • excel自动计算增值税
  • 研发产品样品对我出售账务处理
  • 个体户网上报税流程视频
  • 印花税未计提可以下月补提吗
  • 员工受伤报销
  • 红字发票信息表是销方还是购方开
  • 跨期发票如何进行会计处理?
  • 企业不得抵扣进项税的情形
  • 转出的进项税额是加还是减
  • 企业内部股权划拨流程
  • 王者荣耀电脑版怎么键盘操作
  • 任务管理器无法完成操作拒绝访问
  • IE浏览器如何取消全屏
  • 新车车祸报废
  • 融资租赁ppt
  • 企业转让要收多少费用
  • 销售折扣的税票怎么开
  • php怎么与mysql连接
  • 败诉方支付诉讼费怎么入账
  • 建造合同完工百分比法
  • 限售股转让个人所得税退税
  • axios有哪些常用方法
  • 存货捐赠视同销售要不要确认收入?
  • 不构成业务的反义词
  • 数据库如何迁移数据库表
  • 进项税额转出怎么做账务处理
  • quota命令 显示磁盘已使用的空间与限制
  • 专票认证期限多长时间
  • 如何在国家税务局增值税纳税申报
  • 所得税汇算清缴前取得跨年发票
  • 增值税申报销项发票采集少了怎么办
  • 公司没有人需要申报个税吗
  • 微信小程序实现发红包
  • 为什么我们要用英语交流翻译
  • 计提提成是什么意思
  • 哪些增值税专用发票能抵扣进项税
  • 信用减值损失在贷方表示什么
  • 交强险必须要买嘛
  • 固定资产处置的会计科目
  • 什么企业的应急预案需要备案
  • 财政专户资金支出
  • 用于餐厅的不锈钢餐具
  • 利息收入的会计分录
  • 应纳税调增调减科目是什么
  • 固定资产到期后继续使用称为什么
  • 专项应付款如何核算
  • 主营业务收入增加计入借方还是贷方
  • 上月做了未开票收入,这月开了票怎么报税
  • 零余额帐户如何转出
  • 预收账款的金额是什么
  • 专栏设计模板
  • windowsxp显卡驱动在哪个位置
  • cocos2d getPosition()取不到实际坐标问题
  • 批处理命令是什么语言
  • 刚接触 python 如何快速上手?
  • opengl 有哪些特点?与directx相比它有什么不同?
  • 实用的批处理
  • Linux进程间通信——使用流套接字
  • angular.js
  • javascript主要学什么
  • javascript例题
  • pjblog修改技巧汇总
  • html5三级菜单
  • 外购已税小汽车用于连续生产小汽车为啥可以抵扣
  • 请问农村自建房彩钢瓦下面修房吊什么顶好
  • 内江市税务局
  • 税务筹划企业所得税案例分析题
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设