bash – 从每日日志存档中选择一系列日志

我有一个包含每日日志的文件夹,命名为:

system-2013-01-01.log
system-2013-01-02.log
system-2013-01-03.log
system-2013-01-04.log
system-2013-01-05.log
system-2013-01-06.log
system-2013-01-07.log
system-2013-01-08.log
...
system-2013-01-31.log

如何从2013-01-01到2013-01-15选择(并复制)日志?

最佳答案
bash支持brace expansion,它允许您指定要在命令中展开的多个值甚至范围.例如,

$echo {1..5}
1 2 3 4 5
$echo foo_{01..05}
foo_01 foo_02 foo_03 foo_04 foo_05

因此,您可以轻松指定要复制的文件范围

cp system-2013-01-{01..31}.log /some/destination/dir

哪个bash将扩展到

cp system-2013-01-01.log system-2013-01-02.log system-2013-01-03.log ...

转载注明原文:bash – 从每日日志存档中选择一系列日志 - 代码日志