Как считать количество экземпляра слова, запускающегося в другом слове

Простая команда (обходной путь?), Который работал для меня:

sudo -s
pam-auth-update
passwd 

во время PAM-AUTH-UPDATE , используйте пробел для отключения Аутентификация Kerberos.

0
12.07.2014, 05:13
2 ответа

С помощью GNU sed anhd grep можно попробовать:

sed -n "/$(date +%y%m%d)/,\$p" file | grep -c partitioned

/шаблон/,$ совпадает первый шаблон с концом файла.

С вашим вводом:

$ sed -n "/$(date +%y%m%d)/,\$p" 1.txt | grep -c partitioned
1

Без совпадения даты:

$ sed -n "/$(date +%y%m%d)/,\$p" 1.txt | grep -c partitioned
0
1
28.01.2020, 02:37

Можно попробовать связать два смазки:

grep `date +"%y%m%d"` mysql-error.log | grep -c partitioned

Или еще проще:

grep -c "`date +%y%m%d`.*partitioned" mysql-error.log

EDIT

Так как дата и слово "разделены" находятся на разных строках, то:

d=$(date +"%y%m%d"); awk '/'$d'/,EOF {print $0}' mysql-error.log | grep -c partitioned

Или:

awk '/'$(date +%y%m%d)'/,EOF {print $0}' mysql-error.log | grep -c partitioned
1
28.01.2020, 02:37

Теги

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