для регулярных выражений# из advanced bash scripting guide ###################
######################################################################
-
Классы символов POSIX. [:class:]
Это альтернативный способ указания диапазона символов.
Класс [:alnum:] -- соответствует алфавитным символам и цифрам. Эквивалентно выражению A-Za-z0-9.
Класс [:alpha:] -- соответствует символам алфавита. Эквивалентно выражению A-Za-z.
Класс [:blank:] -- соответствует символу пробела или символу табуляции.
Класс [:cntrl:] -- соответствует управляющим символам (control characters).
Класс [:digit:] -- соответствует набору десятичных цифр. Эквивалентно выражению 0-9.
Класс [:graph:] (печатаемые и псевдографические символы) -- соответствует набору символов из диапазона ASCII 33 - 126. Это то же самое, что и класс [:print:], за исключением символа пробела.
Класс [:lower:] -- соответствует набору алфавитных символов в нижнем регистре. Эквивалентно выражению a-z.
Класс [:print:] (печатаемые символы) -- соответствует набору символов из диапазона ASCII 32 - 126. По своему составу этот класс идентичен классу [:graph:], описанному выше, за исключением того, что в этом классе дополнительно присутствует символ пробела.
Класс [:space:] -- соответствует пробельным символам (пробел и горизонтальная табуляция).
Класс [:upper:] -- соответствует набору символов алфавита в верхнем регистре. Эквивалентно выражению A-Z.
Класс [:xdigit:] -- соответствует набору шестнадцатиричных цифр. Эквивалентно выражению 0-9A-Fa-f.
Вообще, символьные классы POSIX требуют заключения в кавычки или двойные квадратные скобки ([[ ]]).
bash$ grep [[:digit:]] test.file
abc=723