Сравните и рассчитайте в человечности

У меня есть файл с 2 столбцами как это:

Product Cost
ab        5
ab        7
bl        1
bl        8
ce        4

Я хочу искать "ab" и "кипу" и затем должен подвести итог Затрат для них и должен показать, какой больше

Я попробовал (grep "ab" myfile | numsum-c 2) и (grep "кипа" myfile | numsum-c 2), но не могущий сравнить их сумму и распечатать результат. Какая-либо справка?

0
задан 14 September 2015 в 03:31

1 ответ

$ awk '/ab|bl/{s[$1]+=$2} END{for (k in s) print "sum of",k,"is",s[k]; if (a["ab"]>a["bl"]) print "ab is greater"; else print "bl is greater";}' myfile
sum of ab is 12
sum of bl is 9
bl is greater

, Как это работает

  • /ab|bl/{s[$1]+=$2}

    Для строк, которые содержат или ab или кипу, суммируйте столбец 2.

  • После того, как мы закончили читать myfile, используйте print операторы для отображения результатов:

    END{
        for (k in s) print "sum of",k,"is",s[k];
        if (a["ab"]>a["bl"])
            print "ab is greater"
        else 
            print "bl is greater";
     }
    
3
ответ дан 28 July 2019 в 15:24

Другие вопросы по тегам:

Похожие вопросы: