Estou grepping date 2019-09-XX
e , de 2019-10-XX
alguma forma, meu grep não está ajudando, tenho certeza de que estou perdendo algo aqui
Last Password Change: 2019-10-30
Last Password Change: 2017-02-07
Last Password Change: 2019-10-29
Last Password Change: 2019-11-03
Last Password Change: 2019-10-31
Last Password Change: 2018-09-27
Last Password Change: 2018-09-27
Last Password Change: 2019-06-27
Estou seguindo e não funciona
grep "2019\-[09,10]\-" file
também tenteigrep "2019\-{09,10}\-" file
Você deseja que o token de expressão regular "alternância"
|
diga "isto ou aquilo":Consulte Por que minha expressão regular funciona em X, mas não em Y? para algumas informações sobre tokens de expressão regular e classes regex (básicas, estendidas, etc).
grep
não é bom em lidar com números, não sabe como compará-los aritmeticamente. Para isso, você pode querer usar algo como awk ou Perl. Isso não é muito importante aqui, já que é fácil apenas listar09
e10
, mas se você tivesse algo como um intervalo de 97 a 123 seria muito pior.Por exemplo, isso escolheria o ano, mês e dia como números e imprimiria as linhas onde o dia está entre 27 e 31:
O regex é principalmente como um grep ERE , o parêntese captura as partes correspondentes nas variáveis
$1
, etc.$2
$3
Apenas para adicionar uma alternativa: