grep 正则查找中的或 |

最近在学习shell编程,感觉很好玩,平时整理点东西用grep很顺手,但是发现了个问题就是或的关系上使用"|"不行,


我想匹配大于20小于40 的数字要这样


grep ^[2-4][0-9]$单个或用[]来拆分,真的和别的编程语言不是很一样,|是linux下的管道分割,没办法,会了就好