[Comm] Арифметика в bash

Vladimir Karpinsky vkarpinsky на mail.ru
Чт Ноя 17 09:31:15 MSK 2011


17 ноября 2011, 12:19 от "Konstantin S. Uvarin" <khedin на gmail.com>:
>   Так пусть date и считает.
> 
>   JJJ=031
>   date -d "`date +%Y-1-1` + $JJJ days - 1 week"

Спасибо, я как-то об этом не подумал. По мотивам получилось так:

#!/bin/bash
jTODAY=`date +%j`
YEAR=`date +%Y`
DAY=`date -d 20110101 +%Y-%m-%d`
jDAY=`date -d 20110101 +%j`
until [ "$jDAY" -gt "$jTODAY" ]
do
        file="$YEAR"/"$jDAY".dat
        [ ! -f $file ] && echo "File $file is absent"
        DAY=`date -d "$DAY + 1 day" +%Y-%m-%d`
        jDAY=`date -d $DAY +%j`
done

Вероятно можно ещё красивше сделать...

--
  С уважением,
           Владимир.


Подробная информация о списке рассылки community