The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
вчерашняя дата., !*! bman, 12-Апр-07, 15:55  [смотреть все]
Здравтвуйте, о Гуру! =)

столкнулся с проблемой...думаю вы сожете помочь..

задача - вывести в ISO вчерашнюю дату (т.е. 20070411)
можно решить путём $day-1 , но как быть с началом нового месяца? получим (20070500)

что посоветуете?

спасибо.

  • вчерашняя дата., !*! pavel_simple, 16:05 , 12-Апр-07 (1)
    >Здравтвуйте, о Гуру! =)
    >
    >столкнулся с проблемой...думаю вы сожете помочь..
    >
    >задача - вывести в ISO вчерашнюю дату (т.е. 20070411)
    >можно решить путём $day-1 , но как быть с началом нового месяца?
    >получим (20070500)
    >
    >что посоветуете?
    >
    >спасибо.


    • вчерашняя дата., !*! pavel_simple, 16:07 , 12-Апр-07 (3)
      прошу прощения за спам


    • вчерашняя дата., !*! vrh, 11:33 , 27-Апр-07 (15)
      >>Здравтвуйте, о Гуру! =)
      >>
      >>столкнулся с проблемой...думаю вы сожете помочь..
      >>
      >>задача - вывести в ISO вчерашнюю дату (т.е. 20070411)
      >>можно решить путём $day-1 , но как быть с началом нового месяца?
      >>получим (20070500)
      >>
      >>что посоветуете?
      >>
      >>спасибо.

      Кажный день в 23:59:50
      ===> file НАКАНУНЕ = поместить в ./DIR/day_before/
      #!/bin/sh
      date +%H > hour
      date +%M > min
      date +%S > sec
      date +%A > weekf
      date +%a > weeks
      date +%j > yearday
      date +%m > month
      date +%d > daymonth
      date +%w > dayweek
      date +%Y  > year
      date +%y  > year_00
      date +%b  > monthl
      <===


      Кажный день в 00:00:10
      ===> file СЕГОДНЯ  = поместить в ./DIR/day_this/
      !/bin/sh

      date +%H > hour
      date +%M > min
      date +%S > sec
      date +%A > weekf
      date +%a > weeks
      date +%j > yearday
      date +%m > month
      date +%d > daymonth
      date +%w > dayweek
      date +%Y  > year
      date +%y  > year_00
      date +%b  > monthl
      <===
      ... имея эти 2 файла (сег&накан) лепить можно всяко

      do like this, but better...


  • вчерашняя дата., !*! pavel_simple, 16:06 , 12-Апр-07 (2)
    date -d 'now -1 month'
    у меня работает /Debian Sarge
    • вчерашняя дата., !*! NuINu, 16:22 , 12-Апр-07 (4)
      >date -d 'now -1 month'
      >у меня работает /Debian Sarge
      ну тогда уж
      date -d 'now -1 day'
      ведь вроде дату то вчерашнюю надо а не месячной давности :)

      А так можно поставить модуль:
      Time-modules
      и реализовать простенький алгоритм.
      вычтя сначала день, определив предыдущий месяц, еслимесяц 0 то еще и год вычесть.
      а зная год, и месяц можно определить последний день месяца фунцкцией из
      DaysInMonth.pm

      days_in
      ну а потом все это объединить.

      А вообще вчерашнюю дату надо узнавать вчера!!!:)

    • вчерашняя дата., !*! bman, 17:45 , 12-Апр-07 (7)
      >date -d 'now -1 month'
      >у меня работает /Debian Sarge

      =)
      проблема немного глубже... - запускаться всё это будет под win. (ActivePerl), так, что хотелось бы решить проблему как раз на Perle

  • вчерашняя дата., !*! FarID, 15:13 , 20-Апр-07 (14)
    >Здравтвуйте, о Гуру! =)
    >
    >столкнулся с проблемой...думаю вы сожете помочь..
    >
    >задача - вывести в ISO вчерашнюю дату (т.е. 20070411)
    >можно решить путём $day-1 , но как быть с началом нового месяца?
    >получим (20070500)
    >
    >что посоветуете?
    >
    >спасибо.


    my ($mday, $mon, $year) = (localtime(time - 24 * 60 * 60))[3, 4, 5];
    my $yesterday = sprintf '%04d%02d%02d', $year + 1900, $mon + 1, $mday;




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру