关于iftop-0.17如何获取屏幕上指定内容,因为是小白方法比较蠢大家见谅

本文介绍了iftop流量监控工具如何通过源代码解析获取屏幕上的流量信息。重点在于ui.c文件中的draw_line_total()函数,利用mvaddstr输出流量数据,并通过fprintf将信息保存到文件。此外,还提及了ui_print()函数中关于IP地址的显示。
摘要由CSDN通过智能技术生成

由于比设原因,看了一些iftop的源代码,虽然基本都没有看懂。但是还是知道了一些东西的。

首先我们直接上主菜。关于iftop输出到屏幕的函数主要在其ui.c文件下。我们打开ui.c

其中有很多定义的函数,我们找到draw_line_total()函数,其中下面的mvaddstr是一个输出流,我以前应该有所提到。这个函数中的buf,就是存储输出的流量信息,其中y,x分别表示其在终端的坐标信息。如果想要获得流量信息最简单的方法,使用一个fprintf(fp,"%s\n",(buf));将其输入到一个fp文档中,这样我们就获取了流量信息。

给一段我自己改过的代码


void draw_line_total(float sent, float recv, int y, int x, option_linedisplay_t linedisplay, int bytes) {
    char buf[10];
    float n;
    int a = (COLS - 8* HISTORY_DIVISIONS);
    switch(linedisplay) {
        case OPTION_LINEDISPLAY_TWO_LINE:
          draw_line_total(sent, recv, y, x, OPTION_LINEDISPLAY_ONE_LINE_SENT, bytes);
          
          break;
        case OPTION_LINEDISPLAY_ONE_LINE_SENT:
          n = sent;
          break;
        case OPTION_LINEDISPLAY_ONE_LINE_RECV:
          n = recv;
          break;
        case OPTION
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值