如何获取两个日期之间的所有日志文件,我的日志文件名称包含创建日期:x-node0-1-22.09.2018
=>创建于2018年9月22日。
提前致谢
最佳答案
ls -1|awk -F'[-.]' -v from='01.08.2018' -v to='01.10.2018'
'{split(from,f);from=f[3]f[2]f[1];
split(to,t);to=t[3]t[2]t[1];
d=$NF$(NF-1)$(NF-2)}d>=from&&d<=to'
这条线应该工作。
注意:
由于您的示例文件名不包含任何特殊字符,因此我很懒,将
ls
结果用作输入。不推荐。您可以更改
from
和to
参数。在日志文件目录下执行命令。
用一些数据测试
kent$ ls -1
x-node0-1-22.08.2018
x-node0-1-22.09.2018
x-node0-1-31.08.2018
x-node0-1-31.10.2018
kent$ ls -1|awk -F'[-.]' -v from='01.08.2018' -v to='01.10.2018' '{split(from,f);from=f[3]f[2]f[1];split(to,t);to=t[3]t[2]t[1];d=$NF$(NF-1)$(NF-2)}d>=from&&d<=to'
x-node0-1-22.08.2018
x-node0-1-22.09.2018
x-node0-1-31.08.2018
关于linux - 根据文件名获取两个日期之间的日志,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54305468/