Python学习笔记:os.popen(cmd).read()查看后台进程并杀进程
一、os.popen()方法
1.使用语法
os.popen()
方法用于从一个命令打开一个管道。
os.popen(cmd).read()
获取执行后结果。
os.popen(command[, mode[, bufsize]])
# 使用的命令
# 模式权限:默认'r'或者'w'
# 文件需要的缓冲大小 0无缓冲 1行缓冲 其他数值以字节为单位 负值使用系统默认值
返回一个文件描述符号的文件对象。
2.实例
import os
val = os.popen('ls -l /data')
print(val)
# <open file 'ls -l /data', mode 'r' at 0x7f66e8038c00>
val2 = val.read()
print(val2)
# 实际显示内容
二、查看后台进程
top
命令用于实时显示进程动态。
top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
参数说明:
- d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
- q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
- c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
- S : 累积模式,会将己完成或消失的子进程 ( dead child process ) 的 CPU time 累积起来
- s : 安全模式,将交谈式指令取消, 避免潜在的危机
- i : 不显示任何闲置 (idle) 或无用 (zombie) 的进程
- n : 更新的次数,完成后将会退出 top
- b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内
- u:指定用户
# -*- coding: GBK -*-
import pandas as pd
import os
# 查询后台使用情况
valo = os.popen('top -b -n 1').read()
# -n 1 指定更新一次
# -b 输出到文件
# 查询指定用户
valo = os.popen('top -b -u user_name -n 1').read()
print(valo)
三、杀进程
# 查询之后杀进程
valo = os.popen('kill -9 75560').read()
四、统计文件个数、行数
# 统计行数
valo = os.popen('cat /data/datamining/zone_test/tb_syb_mx_kdxy_list.txt | wc -l').read()
# 列出文件 类似于 os.listdir()
val = os.popen('ls -l /data/datamining/zone_test/')
参考链接:os.popen(cmd) .read() 获取执行后的结果且带有换行符\n
参考链接:popen-如何关闭os.popen
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)