Como incrementar um dia em uma data que é armazenada em uma variável

4

Estou no OSX e tenho uma variável de data armazenada em $d , que é formatada como %Y_%m_%d . Então echo $d daria algo como 2016_03_29 . Eu quero incrementar o dia em 1, então ele se torna 2016_03_30 . Pelo que li sobre isso, tentei fazer

date +"%Y_%m_%d" -d "${d:0}${d:4:0} + 1 day"

e

date -j -f '%Y_%m_%d' -v '+1d' "$d" +'%Y_%m_%d'

mas não funcionou.

Como posso fazer isso?

    
por ForeverAlone 29.03.2016 / 17:09

1 resposta

3

O problema está na sua entrada de YYYY_MM_DD. Você pode fazer:

d=2016_03_29
date +%Y_%m_%d -d  "$(echo $d | sed 's/_/-/g')+1 days"

para obter

2016_03_30
    
por 29.03.2016 / 18:05

Tags