【发布时间】:2012-06-24 16:05:44
【问题描述】:
我有一个带有时间戳文件的目录,格式为:
processAlpha20120618.txt
processAlpha20120619.txt
processAlpha20120620.txt
processBeta20120618.txt
processBeta20120619.txt
processBeta20120620.txt
... etc.
我想要一个特定日期的列表。像这样的:
ls -l *201206[19|20|21]*
显然上述方法不起作用,但您可以看到我试图实现的目标。我想匹配字符串“201206”后跟“19”、“20”或“21”的任何内容。
我知道使用 grep 或 find 可以做到这一点,我只是想知道是否可以使用 ls 来完成。
【问题讨论】:
-
根据 Ed Heal 下面的回答,这是一个 shell 问题。因此,为了您的信息,我正在使用 Korn shell。
-
在 KSH 中,这可以通过
ls -l *201206@(19|20|21)*来完成
标签: string shell unix wildcard ls