Como posso converter 14 / Jul / 2015 em 14-08-2015 [duplicate]

0

Como posso converter 14/Jul/2015 em 14-08-2015 ?

Ele está dizendo invalid date format por causa do elemento Jul , mas se eu colocar 07 , ele funcionará bem.

Eu tentei isso:

echo "Please enter the date: "
read X (here X is 14/Jul/2015)
a= date --date=$X '+%d-%b-%y'
echo "$a"
    
por HANUMAN ACHOLIA 14.08.2015 / 15:11

2 respostas

1

Se $x contiver 14/Jul/2015 , use isso:

date -d "${x//\//-}" '+%d-%m-%Y'

imprimirá:

14-07-2015

A date utillity não entende a string separada por barra, então você precisa removê-la e substituí-la por um traço ( - ).

    
por 14.08.2015 / 15:21
0

Seu problema não é com Jul , mas com / , portanto, remova-os usando, por exemplo, o mecanismo de substituição de parâmetro:

echo "Please enter the date: "
read X
a=$(date --date="${X//\//-}" '+%d-%b-%y')
echo "$a"

Por favor, note que sua atribuição de variável também estava errada (não deve haver espaço após = ) e a substituição de comando deve estar entre $() .

    
por 14.08.2015 / 15:22