The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Помогите разобрать строку, !*! Dark Smoke, 05-Дек-14, 15:47  [смотреть все]
Добрый день
второй день сижу, не могу одним махом разобрать строку.
есть строка

connected to: localhost
insert  query update delete getmore command flushes mapped  vsize    res faults  locked db idx miss %     qr|qw   ar|aw  netIn netOut  conn  set repl       time
    *0     *0     *0     *0       0     3|0       0  98.1g   198g  4.86g      0 local:0.0%          0       0|0     0|0   263b     7k    40 crm1  PRI   14:43:50

хочу в результате получить

insert 0
query 0
update 0
...
vsize 198

Сечас делаю так

MAPPED=`$MONGOSTAT -h $HOST -u $USER  -p $PASS | /bin/grep -E "[[:digit:]]" | /bin/awk '{print $8}'`
METRIC=`echo $MAPPED | /bin/sed -r 's/[0-9]|\.//g'`
NUM=`echo $MAPPED | /bin/sed -r 's/[a-zA-Z]//g' | /bin/sed -r 's/\./,/g'`
a=$(metric $NUM $METRIC)
echo "mapped $a"

но так получается, что для каждой строки я заново вызываю эту команду,  а надо что бы команда вызвалась один раз и разобралась так как надо.

Хотелось бы на Shell'e или pythn'e

  • Помогите разобрать строку, !*! Dark Smoke, 16:42 , 05-Дек-14 (1)
    Нашел решение в виде, превратить в строку и с помощью авк разбирать
  • Помогите разобрать строку, !*! Andrey Mitrofanov, 16:50 , 05-Дек-14 (2)
    >  а надо что бы команда вызвалась один раз и разобралась
    > так как надо.

    $ text
    connected to: localhost
    insert  query update delete getmore command flushes mapped  vsize    res faults  locked db idx miss %     qr|qw   ar|aw  netIn netOut  conn  set repl       time
        *0     *0     *0     *0       0     3|0       0  98.1g   198g  4.86g      0 local:0.0%          0       0|0     0|0   263b     7k    40 crm1  PRI   14:43:50
    $ text |awk '$1=="insert"{sub("locked db","locked-db");sub("idx miss %","idx-miss-%");getline s;$0=$0" "s;gsub(" +","\n");print;exit}' |awk '{mx[++n]=$0}END{h=int(n/2);for(i=1;i<=h;i++)print mx[i]" "mx[i+h]}'
    insert *0
    query *0
    update *0
    delete *0
    getmore 0
    command 3|0
    flushes 0
    mapped 98.1g
    vsize 198g
    res 4.86g
    faults 0
    locked-db local:0.0%
    idx-miss-% 0
    qr|qw 0|0
    ar|aw 0|0
    netIn 263b
    netOut 7k
    conn 40
    set crm1
    repl PRI
    time 14:43:50
    $ _

    > Хотелось бы на Shell'e или pythn'e




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру