ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 寻找UNIX中CPU的“消耗大户”(转)

寻找UNIX中CPU的“消耗大户”(转)

原创 Linux操作系统 作者:BSDLite 时间:2007-08-11 18:46:29 0 删除 编辑
寻找UNIX中CPU的“消耗大户”(转)[@more@]多用户的UNIX计算机系统在运行过程中,有时会感觉到运算速度突然慢下来,有时甚至连从键盘输入字符也得过好久才会有反应。有经验的人一定会知道,这时计算机中一定在运行一个非常耗费CPU的进程。这样的进程有时是某个人在执行一个很占CPU的程序,有时则可能是系统中出了意外情况,系统本身在进行处理。无论是哪种情况,系统管理员都应及时找出这样的进程,并做出相应的处理。

UNIX虽然提供了“acct”等一系列记账程序,但这些程序只能在进程结束后才能显示运行时间和占用CPU时间等信息,不能实时计算单位时间内哪一个进程占用CPU时间最多。

为此本人用shell语言编写了一段程序,利用UNIX提供的一些实用程序,实现了上述功能。

此段程序中包含 ps、cut、diff等UNIX实用程序,下面先简单介绍一下这些实用程序的功能。

ps: 用来显示当前系统中进程的有关信息。用 -e 参数则显示系统中所有进程的信息。使用 -f 参数则显示各进程完整的信息;
cut: 用于以列为单位对文件进行剪裁。参数“-c -15,33-”表示把输入文件每行前15个字符及第33个字符以后直到行尾的所有字符放入输出文件;
echo: 用于向屏幕上显示提示信息;
sleep: 可以让 shell 程序等待若干秒,然后再执行后面的语句;
diff: 用于对两个文件进行比较,不同之处则显示出来;
sort: 可对文件中的各行进行排序,排序结果可显示出来;
grep: 可用来找出文件中满足一定条件的行。参数“^”表示找出第一列为空格的各行;
|: 为管道的符号,可实现把前面命令的输出作为后面命令输入的作用,这样就可省略生成中间文件的步骤,提高执行效率;
>: 表示对输出进行重定向,把本来应显示在屏幕上的东西输出到文件中。

程序内容如下:
QUOTE:

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10617542/viewspace-947182/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论