11

我有一个带有时间戳文件的目录,格式如下:

processAlpha20120618.txt
processAlpha20120619.txt
processAlpha20120620.txt
processBeta20120618.txt
processBeta20120619.txt
processBeta20120620.txt
... etc.

我想要一个特定日期的列表。像这样的东西:

ls -l *201206[19|20|21]*

显然上述方法不起作用,但你可以看到我试图实现的目标。我想匹配字符串“201206”后跟“19”、“20”或“21”的任何内容。

我知道这可以使用grepfind,我只是想知道是否可以使用ls来完成。

4

2 回答 2

24

如果您想要匹配确切的日期(看起来就是这样),那么使用 bash 扩展的方法是:

ls -l *201206{19,20,21}*
于 2012-06-22T11:01:11.157 回答
8

ls不这样做 - 外壳扩展*等,然后将它们ls作为参数传递给。

查看 shell 的文档 - 它是调用globbing

于 2012-06-22T10:57:22.687 回答