Chinaunix

标题: 想在vmstat后面加个时间 [打印本页]

作者: jc1860    时间: 2008-08-03 20:36
标题: 想在vmstat后面加个时间
vmstat输出没有时间标示,想在后面加个时间,去网上找了下资料,有这样一个语句:

vmstat 1 1 | awk '{print system("date +%H:%M:%S"),$0}'


但输出是
date +%H:%M:%S  kthr      memory            page            disk          faults      cpu
date +%H:%M:%S  r b w   swap  free  re  mf pi po fr de sr s0 s1 -- --   in   sy   cs us sy id
date +%H:%M:%S  0 0 0 5882560 4673568 97 692 5 1  1  0  0  0  1  0  0  464 2629  329  2  0 98
date +%H:%M:%S  0 0 0 3402912 2214624 0  4  0  0  0  0  0  0  0  0  0  385  185  176  0  0 100
date +%H:%M:%S  0 0 0 3402848 2214560 0  0  0  0  0  0  0  0  0  0  0  385  194  177  0  0 100

没法把系统时间现实出来,请高手帮忙看看!
作者: walkerxk    时间: 2008-08-03 21:10
walkerxk@mirror:~$ vmstat 1 1 | awk '{print system("date +%H:%M:%S"),$0}'
21:09:52
0 procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
21:09:52
0  r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
21:09:52
0  0  4      0  24928  13256 1692116    0    0   106    58    1     0  0  0 94  5
walkerxk@mirror:~$
[gotti]$ vmstat 1 1 | awk '{print system("date +%H:%M:%S"),$0}'
06:09:46
0 procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
06:09:46
0  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
06:09:46
0  4  1  55156 1035816 777968 11347524    0    0   243   220    2    0 38  8 42 12
[gotti]$
两台服务器都测试正常。
作者: 寂寞烈火    时间: 2008-08-03 23:17
用gawk试一试
作者: ly5066113    时间: 2008-08-04 09:20
原帖由 jc1860 于 2008-8-3 20:36 发表
vmstat输出没有时间标示,想在后面加个时间,去网上找了下资料,有这样一个语句:

vmstat 1 1 | awk '{print system("date +%H:%M:%S"),$0}'


但输出是
date +%H:%M:%S  kthr      memory            p ...


print system("date +%H:%M:%S"),$0
这种写法不好,每行记录($0)最前面会多个0,这个0就是调用system的返回值。

应该写成这样:

vmstat 1 1 | awk '{system("date +%H:%M:%S");print}'
作者: liaosnet    时间: 2008-08-04 09:28
原帖由 ly5066113 于 2008-8-4 09:20 发表


print system("date +%H:%M:%S"),$0
这种写法不好,每行记录($0)最前面会多个0,这个0就是调用system的返回值。

应该写成这样:

vmstat 1 1 | awk '{system("date +%H:%M:%S");print}'


呵~~~~~~
作者: 4Aiur    时间: 2008-08-04 10:11
vmstat 3 3 | perl -pe 'while (<>) { print localtime() . ":  $_"; }'        
Mon Aug  4 10:10:08 2008:   r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
Mon Aug  4 10:10:08 2008:   1  0      0 1265004  84448 612872    0    0     0     1    2     6  0  0 100  0
Mon Aug  4 10:10:11 2008:   0  0      0 1264876  84448 612872    0    0     0     0 1013    10  0  0 100  0
Mon Aug  4 10:10:14 2008:   0  0      0 1264876  84448 612872    0    0     0    17 1012    10  0  0 100  0
作者: 寂寞烈火    时间: 2008-08-04 10:17
vmstat 3 3 |while read line;do echo  $(date "+%F %T" $line;done

作者: kent2004    时间: 2008-08-04 16:59
烈火写的真不错。。。。。我杂就没想到呢
作者: wstar    时间: 2008-08-06 21:49
vmstat 3 3 |while read line;do echo  $(date "+%F %T") $line;done

shell真是无所不能啊。
作者: 胡李天    时间: 2008-12-10 12:56
本帖最后由 胡李天 于 2011-11-03 18:17 编辑

closed
作者: rdcwayx    时间: 2008-12-10 14:09
其他的都不错,就是楼上的有问题。 这样就不对了。

echo `date +"%H:%M:%S"` & vmstat 5 5
作者: welcome008    时间: 2008-12-10 15:15
vmstat 1 1|sed "s/^/`date +"%H:%M:%S"`/"


刚学到的
作者: biglazybug    时间: 2008-12-10 16:18
标题: 回复 #12 welcome008 的帖子
嘿嘿 学习了 回去研究下vmstat
作者: 胡李天    时间: 2008-12-21 09:57
标题: 回复 #11 rdcwayx 的帖子
本帖最后由 胡李天 于 2011-11-03 18:14 编辑

closed
作者: moartel    时间: 2008-12-21 19:12
windows下怎么实现?




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2