Это - довольно простой вопрос. Если требуется включать дополнительно полезную информацию об использовании grep этим способом, не стесняться.
Предположение, что путем "выделения чисел, больше, чем 720", Вы подразумеваете, что хотите видеть полный текст, но те числа, выделенные с, раскрашивают терминальный вывод. Я далее предположу, что такие числа должны также быть выделены, если они - часть слова, или иначе снабженный префиксом или снабженный суффиксом что-либо нечисловое (включая знаки отрицания или десятичные точки). Однако продвижение обнуляет, не будет часть соответствия.
Тем не менее можно попробовать регулярное выражение ^|[1-9]\d{3,}|[89]\d{2}|7[2-9]\d
после включают PCRE-совместимые выражения в grep
с -P
переключатель. Вот вывод в качестве примера, читающий из файла example.txt
, с выделенными частями полужирным:
$ grep -P '^|[1-9]\d{3,}|[89]\d{2}|7[2-9]\d' example.txt
something
foo 123 42 1111 777 719 720 1000000
321 -6666 bar999 8383m x1425y 52411.0 00013
Используемое регулярное выражение состоит из нескольких частей, которые объединены с каналом (|
), что означает, что это соответствует, если какая-либо из этих частей соответствует:
^
просто соответствия в начале каждой строки, на самом деле не используя символа. Это добавляется, чтобы также показать все другие строки без соответствующих чисел в выводе, но не выделяя части тех строк.[1-9]\d{3,}
соответствует единственной цифре в диапазоне 1-9 (никакой начальный нуль) сопровождаемый по крайней мере тремя или больше произвольными цифрами (\d
эквивалентно [0-9]
). Это правило соответствует всем числам, больше, чем или равный 1 000.[89]\d{2}
соответствует числу, запускающемуся с 8 или 9 сопровождаемых точно двумя более произвольными цифрами. Это соответствует всем числам от 800 до 999.7[2-9]\d
соответствует числу, запускающемуся с 7, сопровождаемых единственной цифрой в диапазоне 2-9 и другой единственной произвольной цифрой. Это покрывает все числа от 720 до 799.