带OR逻辑的Grep命令

时间:2016-08-12 08:12:20

标签: bash shell grep sh

我有一个目录,其中有许多文件,其名称如work1,work2,work3,work4 ... workn(其中n是任意数字)。我想只列出work作为前缀的文件,之后只有1,2,3,4或5.

例如:它应列出work1 work2 work3 work4 work5。所以我的逻辑是ls -al | grep work,但它也会列出work6work7等。怎么办?

2 个答案:

答案 0 :(得分:7)

There is no need to parse the output of ls。只需在调用ls时使用范围表达式:

ls -al work[1-5]

这将匹配名称与模式work[1-5]匹配的任何文件。也就是说,名称为work1,...,work5

的任何文件

答案 1 :(得分:0)

试试正则表达式:

ls | grep -E 'work[1-5]'