iostat -xzN 5 | grep "^vg\|^Dev"
生成如下输出:
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
vg01-root 0.00 0.00 0.00 0.20 0.00 1.60 8.00 0.00 3.00 3.00 0.06
vg05-vz 0.00 0.00 0.00 0.60 0.00 4.80 8.00 0.01 9.00 9.00 0.54
vg03-vz 0.00 0.00 281.00 128.40 5625.60 1027.20 16.25 42.35 103.54 2.44 99.94
vg02-vz2a 0.00 0.00 28.20 11.40 1416.00 112.00 38.59 0.79 19.84 5.99 23.72
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
vg05-vz 0.00 0.00 0.00 8.60 0.00 7876.80 915.91 0.48 55.70 3.40 2.92
vg03-vz 0.00 0.00 308.20 76.20 10376.00 4433.60 38.53 11.50 30.00 2.60 100.00
vg02-vz2a 0.00 0.00 27.80 24.80 604.80 198.40 15.27 0.49 9.39 4.89 25.72
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
vg05-vz 0.00 0.00 0.00 1.80 0.00 585.60 325.33 0.01 5.78 4.00 0.72
vg03-vz 0.00 0.00 323.20 49.00 9283.20 497.60 26.28 3.48 9.40 2.69 99.98
vg02-vz2a 0.00 0.00 40.20 55.80 2644.80 483.20 32.58 1.14 11.86 4.12 39.58
我希望这显示为top
,即清除屏幕,并在每次迭代时从顶部开始。我在想是否有办法通过sed / awk / perl / how来管理这个,每当你^Dev
推tput clear
时。
但是怎么样?
答案 0 :(得分:2)
您是否考虑过iotop
?
那就是说,投掷一些粗糙的Perl应该不会太难。
#!/usr/bin/perl
# Adjust options to taste.
open(IOSTAT, "iostat -d 5 |") || die;
$| = 1;
while(<IOSTAT>) {
if (/^Dev/) { system "clear"; print; }
if (/^vg/) { print; }
}
答案 1 :(得分:0)
下面是Jeffrey Hantin的回应,这是单线版本:
S_COLORS=always iostat -hz 5 | perl -pe '/avg/ && system(q[clear])'