0

我有一个目录,其中包含一些文件名如下所示的文件:

$ print *.log
20131010.log 20131011.log 20131012.log 20131013.log 20131014.log 20131015.log 20131016.log 20131017.log 20131018.log 20131019.log 20131020.log 20131021.log 20131022.log

如果我只想要给定日期之前的文件,我可以这样做:

$ print <-20131015>.log
20131010.log 20131011.log 20131012.log 20131013.log 20131014.log 20131015.log

我想做的是与此类似的事情:

$ d=20131015
$ print <-$d>.log
zsh: no such file or directory: -20131015

实现这一目标的正确解决方案是什么?

谢谢。

4

1 回答 1

0

您可以使用子外壳。可能有一种更漂亮的方法,但这可以完成工作:

d=20131015
print `zsh -c "ls <-$d>.log"`

编辑: 也许echo会比ls那里更好。

于 2013-10-22T17:20:39.670 回答