Отчет сбора для определенного шаблона в Unix с использованием GreeP & AWK?

Да, можно убить процесс пользователя с помощью kill . Вам нужно будет указать аргумент -9 , чтобы он отправлял сигнал SIGKILL .

Пример: sudo kill -9 6415

Можно ли убить процесс другого пользователя с помощью sudo или мне нужно будет войти в систему как root?

Обратите внимание, что когда вы используете sudo , вы фактически вызываете эту команду как root .

0
18.07.2018, 16:08
2 ответа

awk раствор:

awk '/^[0-9]+:abc /{
         if (abc) print count abc;
         sub(/^[0-9]+/, "");
         abc = $0; count = 0; next
     }
     abc{ count++ }
     END{ print count abc }' file

Выход:

2:abc vvvvv
3:abc kfjwej
2:abc kmflkm

Дополнительный (и последний )подход для вашего нового формата файла с использованиемawkисходного -файла:

count_abc.awkсценарий:

#!/bin/awk -f
/^abc::/{ 
    if (abc) print count, abc;
    gsub(/\\/, "", $2);
    abc = $2; count = 0; next 
}
abc { count++ }
END { print count, abc }

Использование:

awk -f count_abc.awk newfile

Выход:

2 vvnm/asj/pqr
3 kfjwej/asj/pqr
2 kmflkm/asj/pqr 
1
28.01.2020, 02:42

Использование комбинации sed, uniqиawk:

$ sed '/^[^[:space:]]/{s/^[^[:space:]]* //g;s#\\##g;h;}; g' file | uniq -c | awk '{ $1 -= 1; print }'
2 vvnm/asj/pqr
3 kfjwej/asj/pqr
0 flkm/csj/lqr
2 kmflkm/asj/pqr

Сценарий sed, аннотированный:

/^[^[:space:]]/{             # this line starts with a non-space
    s/^[^[:space:]]* //;     # remove the thing that is not a space, up to the space
    s#\\##g;                 # remove backslashes
    h;                       # store in hold space
};

g;                           # get hold space
                             # (implicit print)

Это заменяет каждую «подстроку -заголовка» соответствующей «строкой заголовка», создавая

vvnm/asj/pqr
vvnm/asj/pqr
vvnm/asj/pqr
kfjwej/asj/pqr
kfjwej/asj/pqr
kfjwej/asj/pqr
kfjwej/asj/pqr
flkm/csj/lqr
kmflkm/asj/pqr
kmflkm/asj/pqr
kmflkm/asj/pqr

Затем мы позволяем uniqподсчитать количество последовательных уникальных строк, генерируя

   3 vvnm/asj/pqr
   4 kfjwej/asj/pqr
   1 flkm/csj/lqr
   3 kmflkm/asj/pqr

С помощью awkмы просто уменьшаем число в первом поле этого.

0
28.01.2020, 02:42

Теги

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