subprocess模块windows系统命令和linux系统命令
windows系统
查看所有进程 tasklist
查找指定进程 tasklist | findstr pycharm
程序名称 PID(大写) 数量 大小
python exe 2640 console 1, 11052k
查看命令帮助信息 taskkill/?
杀死进程taskkill /PID 2640 命令后空格,PID大写
强制杀死进程taskkill /F /PID 2640 (PID随机分配,命令(空格)/F(空格)/PID(空格)2640
linux系统
查看进程 ps aux
查看指定进程 ps aux | grep python
kill -9 PID
要求:在python中接收用户输入的命令,在程序中执行系统命令
import os
while True:
cmd = input(">>>:").strip()
if not cmd:continue
res = os.system(cmd)
res = 0执行成功
res = 1执行失败
os.system自动将结果打印到屏幕
os.system将结果打印到屏幕,无法管控
import subprocess
subprocess.Popen("dir") 报错
subprocess.Popen("dir",shell = True)将结果打印到屏幕上
res = subprocess.Popen("dir",shell = True,stdout = subprocess.PIPE stderr = subprocess.PIPE)
stdout正确信息管道 stderr错误信息管道
res1 = res.stdout.read()正确信息,读出为二进制
res2 = res.stderr.read()错误信息,读出为二进制
因为是系统命令,所以二进制类型跟计算机系统相关,windows为gbk二进制,其他系统为utf8二进制
print("1",res1.decode("gbk"))
res3 = res.stdout.read()
print("2",res3)>>>输出2,管道信息输出1次就没了
最新文章
- c#解析xml
- QML Image: Cannot open: qrc:///new.pic.png
- c#窗体虚线图形验证码设计
- JavaWeb学习总结-06 Listener 学习和使用
- Pycharm使用问题# 快捷键设置
- c# 回调委托
- javascript权威指南笔记--javascript语言核心(三)
- Codeforces Round #297 (Div. 2)
- Jersey(1.19.1) - WebApplicationException and Mapping Exceptions to Responses
- Python lambda和reduce函数
- cocos2d-x 3.2 2048——第六部分(最后一章)
- 调试设置移动端Web开发环境搭建实践
- 【python之路10】python实例练习
- JavaWeb之Java Servlet完全教程(转)
- MAC 的ideal 修改 项目名称
- SQL SERVER-时间戳(timestamp)与时间格式(datetime)互相转换
- BFS+二进制状态压缩 hdu-1429
- 数据结构:Queue
- oracle安装完成之后,执行sqlplus命令,提示:bash: sqlplus: command not found...
- IT高管和易筋经的故事
热门文章
- C#项目中的bin目录和obj目录的区别
- javascript 流程控制及函数
- error: stray '\343' in program 问题解决
- IOSAutolayout
- C++拾遗(一)——变量和基本类型
- NBUT 1117 Kotiya's Incantation(字符输入处理)
- MFC技术积累——基于MFC对话框类的那些事儿
- Invalid bound statement (not found): com.ros.dao.LogMapper.insert
- MIPS程序设计实例
- Asp.Net Core 进阶(一) —— 读取appsettings.json