c - Linux 终端 - 打印大量数据

标签 c linux terminal

我正在用 C 编程语言编写应用程序,可以监控远程计算机系统信息、登录用户数、可用内存等。

我会将收集到的信息写入标准输出。但通常会有比一个终端窗口更多的信息,所以我需要在结果中实现某种“滚动”。

我认为最简单的解决方案是打印前 25 行,然后等待用户向上或向下插入并相应地重写所有行。

有没有更简单/更优雅的方法来处理终端上的此类输出?

编辑:忘了说,如果一些新的输入来自远程计算机,我想刷新数据,例如:进程数发生变化。

最佳答案

听起来你需要诅咒。

这是一个 guide to the ncurses library .

这是一个老式的终端 GUI 库。 topmake menuconfig 之类的东西使用它,所以它在每个系统上。它让您不再考虑“打印 25 行并刷新”,而更多地考虑“将数据放入可滚动的文本区域”。

关于c - Linux 终端 - 打印大量数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10922277/

相关文章:

c - 宏和函数定义的不同输出

c - 动态分配和程序

linux - "ls"权限被拒绝,即使我对该目录具有读取权限

linux - 使用 Perl 检查目录是否存在

macos - 如何在终端中使用vim?

ubuntu - 终结者终端水平滚动

c++ - 将数组中的元素数量传递给函数?

c - 初始化 C 结构体与分配成员

linux - 如何使用 'cp'命令排除特定目录?

c - 获取PID信息