cmd命令行结果保存到txt里,屏幕显示一行就保存一行到txt
#coding:utf-8
"""
1.重定向print
2.python与cmd命令
"""
import sys
import os
import subprocess class Logger(object):
def __init__(self, filename="Default.log"):
self.terminal = sys.stdout
self.log = open(filename, "a") def write(self, message):
self.terminal.write(message)
self.log.write(message)
self.log.flush()#这个用来将屏幕输出一行,就保存到txt一行,而不是等cmd运行完再保存
def flush(self):
pass
# path = os.path.abspath(os.path.dirname(__file__))
# type = sys.getfilesystemencoding() def main():
#执行cmd命令,无返回值
sys.stdout = Logger("fps_01.txt") cmd="ping baidu.com"
#第一种os模块:cmd交互第一种用os.system,无返回,使用前需要import os
# os.system(cmd) #第二种os模块:os.popen,也可以写入到txt内,使用Popen模块产生新的process
#用os模块的这两种,都是用当前进程来调用,也就是说它们都是阻塞式的 # result = os.popen(cmd)
# res=result.read()
# for line in res.splitlines():
# print(line)
#也可以这样,同样意思
r = os.popen(cmd)
info = r.readline()
while info:
print(info)
info = r.readline()
#第三种subprocess模块:执行cmd命令,不配合print重写,无返回
# p=subprocess.Popen(cmd,shell=True)
# p.wait() # 第三种subprocess模块:执行cmd命令,并读取返回值,屏幕无输出,文件有记录,
# 如果运行cmd时产生的内容非常多,函数非常容易阻塞住。解决办法是不使用wait()方法
# p = subprocess.Popen(cmd, stdout=subprocess.PIPE, universal_newlines=True)
# #p.wait()
# result_line = p.stdout.readline()
#
# while result_line:
# print(result_line)
# result_line = p.stdout.readline() if __name__ == '__main__':
main()
cmd命令行结果保存到txt里,屏幕显示一行就保存一行到txt的更多相关文章
- windows脚本(VBS)之cmd命令行的妙用
windows脚本(VBS)之cmd命令行的妙用 (2009-08-06 13:40:55) 转载▼ 标签: 脚本 cmd 命令行 vbs js 简单 公式 windows it 分类: 计算机 脚本 ...
- Mongodb的备份,恢复,导入与导出(cmd命令行实现)
要用MongoDB,自然就要用到数据导入导出,就自己学习了一下. 在Mongo学习(二)中就讲到了在bin目录下有一些工具,本篇就是使用这些工具进行数据的导入导出及备份恢复. 注意:以下命令均在cmd ...
- 【转】PowerShell入门(二):PowerShell是Cmd命令行的加强版吗?
转至:http://www.cnblogs.com/ceachy/archive/2013/01/31/PowerShell_vs_Cmd.html PowerShell是命令行的加强版吗?Power ...
- 在windows中,如何使用cmd命令行窗口正确显示编码为utf-8格式的文字
在windows中,如何使用cmd命令行窗口正确显示编码为utf-8格式的文字呢? 正确的步骤如下: 1, 打开cmd命令行窗口 2, 输入命令 >chcp 65001 数字65001代表的是c ...
- 在windows下使用cmd命令行对java文件进行编译和执行
windows下利用cmd命令行可以调用jdk里的javac.exe和java.exe对java文件进行编译和执行,前提是jdk已成功安装并正确配置相关环境变量 相关配置链接:java基础学习总结—— ...
- windows下cmd命令行显示UTF8字符设置(CHCP命令)
本文由 www.169it.com 收集整理 在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在CMD.exe命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容.在默认情况下 ...
- Windows 如何在cmd命令行中查看、修改、删除与添加环境变量
转自:http://www.cnblogs.com/saptechnique/archive/2013/02/17/2914222.html 首先明确一点: 所有的在cmd命令行下对环境变量的修改只对 ...
- 在CMD命令行下关闭进程的命令
转载: [重要]在CMD命令行下关闭进程的命令━━━━━━━━━━━━━━━━━━━━━━━━━━ 方法一: 在"运行"中输入:ntsd -c q -pn 程序名字(在MS-Dos ...
- 【转】Python实现修改Windows CMD命令行输出颜色(完全解析)
用Python写命令行程序的时候,单一的输出颜色太单调.其实我们可以加些色彩,比如用红色表示警告,绿色表示结果正常等.网上也有几篇类似的帖子,但是没有把问题讲清楚,贴的代码也不是太清晰.这里,对Win ...
随机推荐
- UEP-添加
添加数据时候自动更新时间,注意添加数据时,要设置最大主键 时间的工具类:CommonUtil 人的工具类: ContextUtil ScmCompanyAccount scmCompanyAccoun ...
- ngx-admin with Asp.net Core 2.0, possibly plus OrchardCore
1 Download ngx-admin from https://github.com/akveo/ngx-admin 2 Create a new Web Application in vs201 ...
- 利用 postMessage 进行数据传递 (iframe 及web worker)及问题
一 postMessage应用于主页面和iframe之间进行数据的传递 1 子iframe页面向主页面进行数据传递: // 多个子iframe需要将自己的计数统计到主页面进行数据上报 window. ...
- [dart学习]第二篇:dart变量介绍 (一)
前言 本文的所有内容均是官方文档的简单翻译和理解,需要查看原文,请登录 https://www.dartlang.org/guides/language/language-tour 阅读, 让我们 ...
- mask rcnn input数据理解
Array.min() #无参,所有中的最小值 Array.min(0) # axis=0; 每列的最小值 Array.min(1) # axis=1:每行的最小值 字符串在输出时的对齐: S.lju ...
- GHSpro多数据库连接
GHSpro多数据库连接 文章 1 数据连接 XXX.Application.Web -> XmlConfig -> database.config <connectionStrin ...
- base64使用
public static void main(String args[]) throws Exception { InputStream in = null; byte[] data = null; ...
- linux 启动流程
启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬 ...
- gitlab 存储仓库目录设置及数据迁移
注:一开始没有考虑到把gitlab划分好存储目录,占用系统磁盘,由于gitlab是默认安装的,随着公司代码越来越多,导致gitlab数据目录空间不足 磁盘空间: [root@gitlab ~]# df ...
- pat1067 在离散数学中置换群思想上可用并查集和递归两种方法求解问题
1.递归求解 注:叙述时 节点其实就是数字0-N-1 !!!最好用一个数组记录0-N-1每个数字的位置 !!!递归计算一个置换群内部的节点数 分为两种情况 累加M,M即是一个置换群所有数字在正确位置 ...