在solaris上的prstat - 你可以在尺寸超过限制时闪现吗?

时间:2013-04-15 16:30:17

标签: solaris

我被告知,当尺寸类别中的任何值超过阈值时,prstat会将背景从白色闪烁到黑色几次。有没有办法编辑命令并把它放在这里或者这种情况永远不会发生?

1 个答案:

答案 0 :(得分:0)

我不是要吝啬,但要求这样做的人不合理或不理解。我猜“问问者”对prstat一无所知。看看这两个例子:

example% prstat -u root -n 5 -P 1,2 1 1

PID   USERNAME  SWAP   RSS STATE  PRI  NICE      TIME  CPU PROCESS/LWP
 306   root     3024K 1448K sleep   58    0   0:00.00 0.3% sendmail/1
 102   root     1600K  592K sleep   59    0   0:00.00 0.1% in.rdisc/1
 250   root     1000K  552K sleep   58    0   0:00.00 0.0% utmpd/1
 288   root     1720K 1032K sleep   58    0   0:00.00 0.0% sac/1
   1   root      744K  168K sleep   58    0   0:00.00 0.0% init/1
TOTAL:       25, load averages:  0.05, 0.08, 0.12


example% prstat -S rss -n 5 -vc -u root,john

 PID USERNAME USR SYS TRP TFL DFL LCK SLP LAT VCX ICX SCL SIG PROCESS/LWP
   1 root     0.0 0.0  -   -   -   -  100  -    0   0   0   0 init/1
 102 root     0.0 0.0  -   -   -   -  100  -    0   0   3   0 in.rdisc/1
 250 root     0.0 0.0  -   -   -   -  100  -    0   0   0   0 utmpd/1
1185 john    0.0 0.0  -   -   -   -  100  -    0   0   0   0 csh/1
 240 root     0.0 0.0  -   -   -   -  100  -    0   0   0   0 powerd/4
 TOTAL:       71, load averages:  0.02, 0.04, 0.08

那么,您寻找什么价值? prstat显示有很多东西,所以你必须学习所有这些东西,然后编写许多可能输出中的每一个的代码。

要做到这一点:

您需要做的是使用在命令行输入的参数运行prstat,在子进程中读取并解释它生成的所有内容,然后将其映射到输出并根据需要闪烁屏幕。您可以使用ksh或zsh中的coprocesses或使用bash中的fifos执行此操作。考虑在-e模式下运行prtstat,无论用户输入什么,因此您可以使用全屏来阅读和操作。

可以使用转义序列来完成屏幕闪烁,例如更改背景颜色或任何您想要的内容。以下是基于Windows的终端的起点:

ANSI escape sequences

对于Vt100(UNIX)

terminal escape codes