2013-02-19 2 views
1

выхода IOSTAT такова:Синтаксического IOSTAT выхода

Device:   rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util 
sda    0.00  2.40 0.01 3.92  0.16 25.28 12.95  0.05 12.81 6.58 2.58 
sda1    0.00  0.00 0.00 0.00  0.00  0.00 25.86  0.00 6.57 5.38 0.00 
sda2    0.00  2.40 0.01 3.92  0.16 25.28 12.95  0.05 12.81 6.58 2.58 
sdb    0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 30.37 20.16 0.00 
VG00-LogVol00 
       0.00  0.00 0.00 0.70  0.02  2.79  8.04  0.02 23.72 3.71 0.26 
VG00-LogVol04 
       0.00  0.00 0.00 4.31  0.03 17.26  8.01  0.07 16.74 4.32 1.87 
VG00-LogVol03 
       0.00  0.00 0.00 0.24  0.00  0.98  8.01  0.01 21.37 8.52 0.21 
VG00-LogVol08 
       0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 14.03 2.31 0.00 
VG00-LogVol01 
       0.00  0.00 0.00 0.00  0.00  0.00  8.03  0.00 127.25 1.17 0.00 
VG00-LogVol07 
       0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 2.42 1.72 0.00 
VG00-LogVol06 
       0.00  0.00 0.00 0.80  0.01  3.21  8.02  0.01 10.28 4.89 0.39 
VG00-LogVol02 
       0.00  0.00 0.01 0.26  0.10  1.04  8.52  0.01 52.88 6.01 0.16 
VG00-LogVol05 
       0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 3.73 0.33 0.00 

Я пытаюсь разобрать вывод, но, когда я достигаю «vg00-LogVol00», «vg00-LogVol04» У меня есть проблемы с анализом текста. Есть ли способ удалить дополнительные строки с помощью sed?

Спасибо

ответ

1

Если vg00 всегда присутствует в расщепленных линий, вы могли бы сделать это следующим образом:

sed '/VG00/ { N; s/\n// }' 

С копировать/вставить текст У меня есть следующие выравнивает столбцы (GNU СЭД и BSD СЭД):

sed '/VG00/ { N; s/\n//; s/ \{5,\}/  /; }' 

Выход:

Device:   rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util 
sda    0.00  2.40 0.01 3.92  0.16 25.28 12.95  0.05 12.81 6.58 2.58 
sda1    0.00  0.00 0.00 0.00  0.00  0.00 25.86  0.00 6.57 5.38 0.00 
sda2    0.00  2.40 0.01 3.92  0.16 25.28 12.95  0.05 12.81 6.58 2.58 
sdb    0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 30.37 20.16 0.00 
VG00-LogVol00  0.00  0.00 0.00 0.70  0.02  2.79  8.04  0.02 23.72 3.71 0.26 
VG00-LogVol04  0.00  0.00 0.00 4.31  0.03 17.26  8.01  0.07 16.74 4.32 1.87 
VG00-LogVol03  0.00  0.00 0.00 0.24  0.00  0.98  8.01  0.01 21.37 8.52 0.21 
VG00-LogVol08  0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 14.03 2.31 0.00 
VG00-LogVol01  0.00  0.00 0.00 0.00  0.00  0.00  8.03  0.00 127.25 1.17 0.00 
VG00-LogVol07  0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 2.42 1.72 0.00 
VG00-LogVol06  0.00  0.00 0.00 0.80  0.01  3.21  8.02  0.01 10.28 4.89 0.39 
VG00-LogVol02  0.00  0.00 0.01 0.26  0.10  1.04  8.52  0.01 52.88 6.01 0.16 
VG00-LogVol05  0.00  0.00 0.00 0.00  0.00  0.00  8.00  0.00 3.73 0.33 0.00 
+0

спасибо! – amprantino

0

я бы на

sed -e '/^\([^[:space:]]\+\)$/{N;s/\n//;}' 

предполагая, что линии устройства не имеют никаких пробелов.

Но я также хотел бы изучить возможность влияния на иостат и заставить его производить разные результаты. Однако я не знаю вариантов.

+0

iostat, к сожалению, не имеет таких выходов :( – amprantino

Смежные вопросы