2013-10-22 216 views
0

我有包含一些文件,其文件名的目錄範圍如下:ZSH與變量

$ 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 

什麼是正確的解決方案,以實現這一目標?

謝謝。

回答

0

你可以使用一個子shell。有可能是一個更漂亮的方式,但這種能夠完成任務:

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

編輯: 也許echo會比ls有更好的。