我的目标是显示日志名称列表,从开始时间列开始,grepping for 20161221
.我使用这个命令:
$ ls -m1 /var/log/audit.raw.* | grep 20161221
/var/log/audit.raw.20161220173001EST.20161221000004EST.gz
/var/log/audit.raw.20161221000004EST.20161221083001EST.gz
/var/log/audit.raw.20161221083001EST.20161221163000EST.gz
/var/log/audit.raw.20161221163000EST.20161222000004EST.gz
但第一个条目来自20161220
.我知道我可以用这个命令成功地修剪它:
$ ls -m1 /var/log/audit.raw.* | grep 20161221 | tail -n +2
/var/log/audit.raw.20161221000004EST.20161221083001EST.gz
/var/log/audit.raw.20161221083001EST.20161221163000EST.gz
/var/log/audit.raw.20161221163000EST.20161222000004EST.gz
我想看看是否有更智能的 grep 用法来避免使用tail -n +2
答案1
您想做的事情可以只使用以下命令来完成ls
:
$ ls /var/log/audit.raw.20161221*