Provavelmente agrupamento é seu amigo aqui
zgrep -E '/(Oct|Nov|Dec)/2014|/(Jan|Feb|Mar)/2015'
então algo como
find . -type f -name 'access_log*' -exec zgrep -E '/(Oct|Nov|Dec)/2014|/(Jan|Feb|Mar)/2015' {} +
Eu preciso zgrep determinado período de tempo, por exemplo: from 1/Oct/2014 to 31/Mar/2015.
Eu estava tentando fazer assim:
find . -name \*.* | xargs zgrep -E '/Oct/2014 | /Nov/2014 | /Dec/2014 | /Jan/2015 | /Feb/2015 | /Mar/2015 | /Feb/2015'| /Mar/2015'
mas não funcionou. Eu esperaria por um longo período de tempo e acabaria sem nada.
Eu acho que não é importante, mas minha estrutura parece:
~/Desktop/logs
├── first_folder
| ├── 11.11 (folder)
│ | ├── access_log
│ | ├── access_log.1.gz
│ | :
│ | └── access_log.40.gz
| └── 11.12 (folder)
│ ├── access_log
│ ├── access_log.1.gz
│ :
│ └── access_log.16.gz
├── second_folder (folder)
| ├── 31.11 (folder)
│ | ├── access_log
│ | ├── access_log.1.gz
│ | :
│ | └── access_log.20.gz
| └── 31.15 (folder)
│ ├── access_log
│ ├── access_log.1.gz
│ :
: └── access_log.38.gz
└── last_folder
├── 91.11 (folder)
| ├── access_log
| ├── access_log.1.gz
| :
| └── access_log.25.gz
└── 91.15 (folder)
├── access_log
├── access_log.1.gz
:
└── access_log.30.gz
Provavelmente agrupamento é seu amigo aqui
zgrep -E '/(Oct|Nov|Dec)/2014|/(Jan|Feb|Mar)/2015'
então algo como
find . -type f -name 'access_log*' -exec zgrep -E '/(Oct|Nov|Dec)/2014|/(Jan|Feb|Mar)/2015' {} +