TL;DR :если вы хотите сделать больше после сопоставления с одним из нескольких шаблонов, заключите их, как в\(pattern1\|pattern2\)
пример :Я хочу найти все места, где переменная, содержащая имя 'date', определяется как String или int. (например, "int cronDate =" или "String textFormattedDateStamp ="):
cat myfile | grep '\(int\|String\) [a-zA-Z_]*date[a-zA-Z_]* ='
С grep -E
вам не нужно экранировать круглые скобки или вертикальную черту, т. е.grep -E '(int|String) [a-zA-Z_]*date[a-zA-Z_]* ='