sed, как показать только наибольшее количество строк, содержащих «Page» - PullRequest
0 голосов
/ 15 сентября 2011

В настоящее время отображаются только цифры.

sed 's/[^0-9]*//g')

Как сказать sed показывать ТОЛЬКО наибольшее найденное число, учитывая ТОЛЬКО строку, содержащую слово «Страница»?

Ответы [ 2 ]

1 голос
/ 15 сентября 2011
sed '/Page/!d; s/[^0-9]//g' | sort -n | tail -1

или

awk '/Page/ {gsub(/[^0-9]/,""); if ($0 > max) max = $0} END {print max}'
0 голосов
/ 15 сентября 2011
grep Page filename | awk '{print $2}' | sort -n | tail -n 1 

Предполагается, что номер страницы является вторым словом в строке (если нет, измените команду awk соответствующим образом)

...