Answers:
如果您对要执行的操作更加具体,这将有所帮助。
这是一个非常简单的示例:
while true
do
clear
date
sleep 1
done
通常,大多数数据在/ proc虚拟文件系统原语中公开。每个进程在/ PID目录中的/ proc中都有一个条目。因此,/ proc / 5437将具有用于5437进程的原语。在那儿读取原语并进行适当的解析将使您接近top所做的事情。
Top实际上是通过调用特定的函数调用来工作的,这些函数直接从内核中提取此信息,而不是从文件中提取信息。要从bash中执行相同操作,您必须将其从/ proc虚拟文件系统中拉出,或者将其从其他调用中提取出来,例如to ps
。
至于实时性,这在top提供的详细程度上并不是很可行。您可以对时间进行足够精细的切割,使其看起来是实时的,但是您仍将获得时间切片。
curses
接口...但是我认为这是一个更严重的编程问题,属于SO