Partos
Дата: 20.07.2006 08:50:50
Здравствуйте.
Есть такая проблема:
ОС: Solaris 5.9 на которой по-другому работает функция Date, не совсем так как на фре и на которой проблемно получить количество секунд с начала эпохи.
Задача: необходимо в цикле, начиная с текущей даты, уменьшать дату с шагом 1 до значения = (текущая дата -10 дней) и получать промежуточные значение даты в переменную в формате yyyymmdd. Всё это нужно в bash-скрипте, в котором возможны perl-овые вставки.
Вот на чём заступорился я:
#!/bin/sh
i=10
d=`/usr/bin/perl -e 'print time();'`
while [ $i -gt 0 ]
do
i=`expr $i - 1`
# echo $d
d=`expr $d - 86400`
cmd="/usr/bin/perl -e 'print localtime($d);'"
lt=$cmd
echo $lt
done
Происходит следующее: получаем количество секунд с начала эпохи, вычитаем из него количество секунд сооттветствующее суткам и пытаемся это новое количество секунд снова преобразовать к дате. Пока заставить работать не удалось.
Если кто сможет помочь - большое спасибо!!