2013-12-02 2 views

ответ

6
val1=$(date +%Y%m%d --date="yesterday") 

должен сделать трюк.

0

Если date РЕАЛИЗАЦИЯ дроссели на @ user2042297 отвечают, этот мог бы работы:

awk 'BEGIN { 
    split(strftime("%Y %m %d", systime()), now) 
    yesterday = mktime(sprintf("%d %d %d 0 0 0", now[1], now[2], now[3]-1)) 
    print strftime("%Y%m%d", yesterday) 
}' 

Это может потребовать GNU AWK, так что вы не могли бы быть в лучшем положении.

0

Вы можете использовать команду GNU даты, как показано ниже

Getting дату в прошлом

Чтобы получить вчера и раньше день в прошлом использование струна день назад:

date --date = 'вчера'

дата - дата = '1 день назад'

дата --date = '10 дней назад

даты --date = '10 недели назад

даты --date = '10 месяца назад

дата --date = '10 год назад

Получение даты в будущем

чтобы получить завтра и послезавтра (завтра + N) использовать слово день, чтобы получить дату в будущем следующим образом:

дата --date = 'завтра'

дата --date = '1 день'

Дата --date = '10 день '

дата --date =' 10 недели '

дата --date = '10 месяца'

дата --date = '10 года»

В этом случае это должно быть

val1 = date +%Y%m%d --date="yesterday"

Смежные вопросы