Python教程:os.popen(cmd).read()查看后台进程并杀进程

cnblogs 2024-07-04 16:39:00 阅读 69

一、os.popen()方法

1.使用语法

<code>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()

#学习中遇到问题没人解答?小编创建了一个Python学习交流群:725638078

# 列出文件 类似于 os.listdir()

val = os.popen('ls -l /data/datamining/zone_test/')



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。