Use ", não '. As aspas duplas permitem a expansão de variáveis entre aspas e aspas simples não.
daysAgo=1
echo $(date +%d -d "$daysAgo day ago")
06
daysAgo=1
exp="$daysAgo days ago"
echo $(date +%d -d "$exp")
06
Eu dei uma variável que contém um número
daysAgo=1
Eu gostaria de expandir essa variável em uma expressão de data de obtenção. Assim:
$(date +%d -d '$daysAgo days ago')
O que eu preciso fazer para que a variável $ daysAgo seja expandida?
Eu tentei assim sem sucesso:
daysAgo=1
exp="'${daysAgo} days ago'"
$(date +%d -d $exp)
Você precisa usar "
em vez de '
. De man bash
:
Enclosing characters in single quotes preserves the literal value of each character within the quotes.