免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2879 | 回复: 6
打印 上一主题 下一主题

关于如何处理prstat的结果 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-01-09 14:37 |只看该作者 |倒序浏览
由于需要prstat的结果中的size的选项
可以看到如下
   PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP
15432 mailsrv    20M   12M sleep   58    0   0:00.00 0.6% tcp_smtp_server/7
20208 nobody    217M  212M sleep   58    0   0:05.19 0.5% ns-slapd/30
15404 mailsrv    20M   12M sleep   58    0   0:00.01 0.4% tcp_smtp_server/8
15133 mailsrv    20M   12M sleep   38    0   0:00.01 0.4% tcp_smtp_server/8
28132 mailsrv   110M   64M sleep   59   -2   0:05.19 0.3% mshttpd/42
28135 mailsrv   119M   74M sleep   59   -2   0:07.16 0.2% mshttpd/41
15128 mailsrv    20M   12M sleep   58    0   0:00.00 0.2% tcp_smtp_server/8
22113 mailsrv    72M   40M sleep   59   -2   0:00.00 0.2% popd/8
22669 root       28M   17M sleep   58    0   0:00.05 0.1% dispatcher/19
15096 mailsrv    20M   12M sleep   58    0   0:00.10 0.1% tcp_smtp_server/7
15533 root     1864K 1648K cpu1    58    0   0:00.00 0.0% prstat/1
15525 mailsrv    19M   12M sleep   58    0   0:00.00 0.0% smtp_client/9
15330 mailsrv    26M   16M sleep   58    0   0:00.00 0.0% smtp_client/7
15512 mailsrv    18M   11M sleep   58    0   0:00.00 0.0% reprocess/4
22096 mailsrv    56M   42M sleep   59   -2   0:00.03 0.0% stored/9
22675 mailsrv    19M 9200K sleep   58    0   0:02.03 0.0% job_controller/6
15522 mailsrv    68M   31M sleep   58    0   0:00.00 0.0% ims_master/4
24167 nobody     68M   45M sleep   58    0   0:00.00 0.0% ns-httpd/54
   484 root     2944K 2256K sleep   58    0   0:02.04 0.0% event_pvr_exec-/5
   482 root     2672K 1992K sleep   58    0   0:00.11 0.0% ssha_pvr_exec/5
   220 root       15M   14M sleep   48    0   0:00.44 0.0% cron/1
Total: 76 processes, 573 lwps, load averages: 0.25, 0.23, 0.21


是有K 和M两个处理的
我想吧k的前面的数值除以1000,由于awk和sed不够功力,我目前是用perl
split后判断的
想请教一下,用sed和awk如何处理?

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2005-01-09 14:56 |只看该作者

关于如何处理prstat的结果

这样的结果?

  1. /home/lee/test#awk '{if($4~/K/){$4=$4/1000"M"}print}' file
  2. PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
  3. 15432 mailsrv 20M 12M sleep 58 0 0:00.00 0.6% tcp_smtp_server/7
  4. 20208 nobody 217M 212M sleep 58 0 0:05.19 0.5% ns-slapd/30
  5. 15404 mailsrv 20M 12M sleep 58 0 0:00.01 0.4% tcp_smtp_server/8
  6. 15133 mailsrv 20M 12M sleep 38 0 0:00.01 0.4% tcp_smtp_server/8
  7. 28132 mailsrv 110M 64M sleep 59 -2 0:05.19 0.3% mshttpd/42
  8. 28135 mailsrv 119M 74M sleep 59 -2 0:07.16 0.2% mshttpd/41
  9. 15128 mailsrv 20M 12M sleep 58 0 0:00.00 0.2% tcp_smtp_server/8
  10. 22113 mailsrv 72M 40M sleep 59 -2 0:00.00 0.2% popd/8
  11. 22669 root 28M 17M sleep 58 0 0:00.05 0.1% dispatcher/19
  12. 15096 mailsrv 20M 12M sleep 58 0 0:00.10 0.1% tcp_smtp_server/7
  13. 15533 root 1864K 1.648M cpu1 58 0 0:00.00 0.0% prstat/1
  14. 15525 mailsrv 19M 12M sleep 58 0 0:00.00 0.0% smtp_client/9
  15. 15330 mailsrv 26M 16M sleep 58 0 0:00.00 0.0% smtp_client/7
  16. 15512 mailsrv 18M 11M sleep 58 0 0:00.00 0.0% reprocess/4
  17. 22096 mailsrv 56M 42M sleep 59 -2 0:00.03 0.0% stored/9
  18. 22675 mailsrv 19M 9.2M sleep 58 0 0:02.03 0.0% job_controller/6
  19. 15522 mailsrv 68M 31M sleep 58 0 0:00.00 0.0% ims_master/4
  20. 24167 nobody 68M 45M sleep 58 0 0:00.00 0.0% ns-httpd/54
  21. 484 root 2944K 2.256M sleep 58 0 0:02.04 0.0% event_pvr_exec-/5
  22. 482 root 2672K 1.992M sleep 58 0 0:00.11 0.0% ssha_pvr_exec/5
  23. 220 root 15M 14M sleep 48 0 0:00.44 0.0% cron/1
  24. Total: 76 processes, 573 lwps, load averages: 0.25, 0.23, 0.21
复制代码

论坛徽章:
0
3 [报告]
发表于 2005-01-09 15:18 |只看该作者

关于如何处理prstat的结果

哦哦哦,比我的简单好多
很清楚

论坛徽章:
0
4 [报告]
发表于 2005-01-09 16:01 |只看该作者

关于如何处理prstat的结果

二楼的awk比较强啊,俺的就不行:
echo 128K|awk '{print $1/2}'
0
echo 128|awk '{print $1/2}'
64

论坛徽章:
0
5 [报告]
发表于 2005-01-09 20:03 |只看该作者

关于如何处理prstat的结果

你的128K不是存数字,转换后当然会变为0的。

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
6 [报告]
发表于 2005-01-09 20:07 |只看该作者

关于如何处理prstat的结果

[quote]原帖由 "ZealeS"]你的128K不是存数字,转换后当然会变为0的。[/quote 发表:

那是awk版本的问题,看我的:
/home/lee#echo 128K|awk '{print $1/2}'
64
/home/lee#echo 444kkkk|awk '{print $1/2}'
222

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
7 [报告]
发表于 2005-01-09 20:18 |只看该作者

关于如何处理prstat的结果

echo 128K|awk '{print $1/2"K"}'
64K
我的咋可以
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP