[PERL] сколько прошло секунд от начала суток
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
[PERL] сколько прошло секунд от начала суток
как сабж посчитать?
задача простая, мне надо на момент запуска скрипта знать сколько прошло секунд от начала суток, по времени сервера где этот скрипт и работает
===
с какого конца подступиться не знаю - лезут в голову извращённые методы с запросом в базу - на SQL такие задачки на раз решаются...
но не хочется. т.к. базы нет.
задача простая, мне надо на момент запуска скрипта знать сколько прошло секунд от начала суток, по времени сервера где этот скрипт и работает
===
с какого конца подступиться не знаю - лезут в голову извращённые методы с запросом в базу - на SQL такие задачки на раз решаются...
но не хочется. т.к. базы нет.
Убей их всех! Бог потом рассортирует...
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- vadim64
- майор
- Сообщения: 2101
- Зарегистрирован: 2009-09-17 15:15:26
- Откуда: Засратовец
Re: [PERL] сколько прошло секунд от начала суток
оффтоп: Проблема 2038 года
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.
- ProFTP
- подполковник
- Сообщения: 3388
- Зарегистрирован: 2008-04-13 1:50:04
- Откуда: %&й
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
Код: Выделить всё
# perl -MPOSIX -e 'print mktime((0)x3, sub { $_[3],$_[4]+1,$_[5] }->(localtime))'
1307484000
(может быть есть неточность, надо смотреть)
-
- ст. лейтенант
- Сообщения: 1374
- Зарегистрирован: 2010-02-05 0:21:40
Re: [PERL] сколько прошло секунд от начала суток
a зачем +1?ProFTP писал(а):выведит время в unixtime за текущий день за 0-0-0 часов...Код: Выделить всё
# perl -MPOSIX -e 'print mktime((0)x3, sub { $_[3],$_[4]+1,$_[5] }->(localtime))' 1307484000
(может быть есть неточность, надо смотреть)
Как раз его не надо вроде.
Ну и полностью ответ на поставленную задачу тогда -
Код: Выделить всё
perl -MPOSIX -e 'print time-mktime((0)x3, sub { $_[3],$_[4],$_[5] }->(localtime))'
- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
ненавижу этот язык...
а можно, для дебилов, однострочное представление разложить на десяток строк с использованием промежуточных переменных, чтобы понятно было что присходит?
а можно, для дебилов, однострочное представление разложить на десяток строк с использованием промежуточных переменных, чтобы понятно было что присходит?
Убей их всех! Бог потом рассортирует...
- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
Код: Выделить всё
serv3# /root/scripts/stat/get.resource.usage.pl
Undefined subroutine &main::mktime called at /root/scripts/stat/get.resource.usage.pl line 25, <MYTMP> line 4276.
serv3#
Код: Выделить всё
serv3# grep mktime /root/scripts/stat/get.resource.usage.pl
$num_seconds = (time-mktime((0)x3, sub { $_[3],$_[4],$_[5] }->(localtime)));
serv3#
Убей их всех! Бог потом рассортирует...
- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
Код: Выделить всё
use POSIX;
первый вопрос отсатёся открытым - я не понимаю как это работает =(
Убей их всех! Бог потом рассортирует...
- FreeBSP
- майор
- Сообщения: 2020
- Зарегистрирован: 2009-05-24 20:20:19
- Откуда: Москва
Re: [PERL] сколько прошло секунд от начала суток
как я понял, идея такая
1) получаем timestamp для 0:00:00 текущего дня
2) получаем текущий timestamp.
3) вычитанием первого из второго получаем искомое число секунд
P.S. 
1) получаем timestamp для 0:00:00 текущего дня
2) получаем текущий timestamp.
3) вычитанием первого из второго получаем искомое число секунд
Код: Выделить всё
$num_seconds = (
time - # из теккущего timestamp вычитаем
mktime( # другой timestampб вероятно на начало текущих суток
(0)x3, # особоая, чорная перловая магия
sub { $_[3], $_[4], $_[5] }->(localtime) # тут вероятно идет извлечение из полученой даты вида Yr Mo Dy Hr Mn Sc последних трех составляющих - текуих часов, мин и секунд. скорее всего задается прям сразу процедура-обработчик для возвращаемого значения. возвращается массив, на обработчик он поступает как $_, и из него последние три элемента выкорчовываем
) # mktime
);
+1Alex Keda писал(а):ненавижу этот язык...

Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
time - это что? если функция то почему не записана как time() ?
как можно вообще на таком языке писать. код должен сам себя документировать, а тут одна строка и надо поллитра, каждому, чтобы разобраться.
--
всё равно не понимаю.
как можно вообще на таком языке писать. код должен сам себя документировать, а тут одна строка и надо поллитра, каждому, чтобы разобраться.
--
всё равно не понимаю.
Убей их всех! Бог потом рассортирует...
- ProFTP
- подполковник
- Сообщения: 3388
- Зарегистрирован: 2008-04-13 1:50:04
- Откуда: %&й
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
Код: Выделить всё
sub { $_[3], $_[4], $_[5] }->(localtime)
Код: Выделить всё
use POSIX qw(strftime);
strftime("%Y-%m-%d", localtime)
ЗЫ: пишите так как вам удобно

точно, не заметилFiL писал(а): a зачем +1?
Как раз его не надо вроде.
- FreeBSP
- майор
- Сообщения: 2020
- Зарегистрирован: 2009-05-24 20:20:19
- Откуда: Москва
Re: [PERL] сколько прошло секунд от начала суток
черная перловая магияAlex Keda писал(а):time - это что? если функция то почему не записана как time() ?
как можно вообще на таком языке писать. код должен сам себя документировать, а тут одна строка и надо поллитра, каждому, чтобы разобраться.

наверное "если перед именем нет явного обозначения, что это переменная, и нет такой константы, то это функция" или что то типа того
я сам тут больше на очучения ориентируюсь, а на не понимание

Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
-
- старшина
- Сообщения: 427
- Зарегистрирован: 2008-10-03 18:52:02
Re: [PERL] сколько прошло секунд от начала суток
что-то вы тут лишнего понаписали. какие-то годы, таймстампы...
число секунд от начала суток равно:
где:
h - текущий час
m - текущая минута
s - текущая секунда
число секунд от начала суток равно:
Код: Выделить всё
h*3600 + m*60 + s
h - текущий час
m - текущая минута
s - текущая секунда
- FreeBSP
- майор
- Сообщения: 2020
- Зарегистрирован: 2009-05-24 20:20:19
- Откуда: Москва
Re: [PERL] сколько прошло секунд от начала суток


Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
это как, в коде?rmn писал(а):что-то вы тут лишнего понаписали. какие-то годы, таймстампы...
число секунд от начала суток равно:где:Код: Выделить всё
h*3600 + m*60 + s
h - текущий час
m - текущая минута
s - текущая секунда
Убей их всех! Бог потом рассортирует...
-
- старшина
- Сообщения: 427
- Зарегистрирован: 2008-10-03 18:52:02
Re: [PERL] сколько прошло секунд от начала суток
на php так:Alex Keda писал(а): это как, в коде?
Код: Выделить всё
$date = explode(":", date("h:i:s"));
$seconds = $date[0] * 3600 + $date[1] * 60 + $date[2];

- Alex Keda
- стреляли...
- Сообщения: 35426
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
с пыхом и сам разобрался бы 
там всё прозрачней

там всё прозрачней
Убей их всех! Бог потом рассортирует...
- FreeBSP
- майор
- Сообщения: 2020
- Зарегистрирован: 2009-05-24 20:20:19
- Откуда: Москва
Re: [PERL] сколько прошло секунд от начала суток
seconds.php
ы?
или
Код: Выделить всё
#! /usr/local/...../php-cgi
<?php
list($h, $i, $s) = explode(":", date("h:i:s"));
echo $h * 3600 + $i * 60 + $s
?>
Код: Выделить всё
#!/usr/bin/perl
...
$secs=`seconds.php`
...
или
Код: Выделить всё
#!/usr/bin/perl
...
$secs=`/bin/date ...`
...
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!
-
- старшина
- Сообщения: 427
- Зарегистрирован: 2008-10-03 18:52:02
Re: [PERL] сколько прошло секунд от начала суток
в перле нет встроенной функции, чтобы узнать текущее время?FreeBSP писал(а): илиКод: Выделить всё
#!/usr/bin/perl ... $secs=`/bin/date ...` ...
---
как-то так:
Код: Выделить всё
my ($sec,$min,$hour,$mday,$mon,$year, $wday,$yday,$isdst) = localtime time;
my $seconds = $hour*3600 + $min*60 + $sec;
- thefree
- лейтенант
- Сообщения: 980
- Зарегистрирован: 2008-12-29 9:23:19
- Откуда: Весёлая Страна
Re: [PERL] сколько прошло секунд от начала суток
Код: Выделить всё
perl -e 'print sub { $_[0]+$_[1]*60+$_[2]*3600 }->(localtime);'
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету
- ProFTP
- подполковник
- Сообщения: 3388
- Зарегистрирован: 2008-04-13 1:50:04
- Откуда: %&й
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
у тебя там там нету знакомых перл программистов?FiL писал(а): Ну и полностью ответ на поставленную задачу тогда -
ты там не знакомишься нигде в Маями?

давай сделаем компанию Filin America online corp Inc

-
- ст. лейтенант
- Сообщения: 1374
- Зарегистрирован: 2010-02-05 0:21:40
Re: [PERL] сколько прошло секунд от начала суток
Перловые программисты знакомые есть. Не в Маями, правда.
Но я к ним не отношусь. Я перл также ненавижу, как и большинство в этом топике
Но я к ним не отношусь. Я перл также ненавижу, как и большинство в этом топике

-
- ст. лейтенант
- Сообщения: 1374
- Зарегистрирован: 2010-02-05 0:21:40
Re: [PERL] сколько прошло секунд от начала суток
Для нормальных людей лучше не "localtime time", а "localtime (time)" или просто "localtime()". Оно в таком виде понятнееrmn писал(а): как-то так:Код: Выделить всё
my ($sec,$min,$hour,$mday,$mon,$year, $wday,$yday,$isdst) = localtime time; my $seconds = $hour*3600 + $min*60 + $sec;

- ProFTP
- подполковник
- Сообщения: 3388
- Зарегистрирован: 2008-04-13 1:50:04
- Откуда: %&й
- Контактная информация:
Re: [PERL] сколько прошло секунд от начала суток
но там же платят $900 в день!FiL писал(а):Перловые программисты знакомые есть. Не в Маями, правда.
Но я к ним не отношусь. Я перл также ненавижу, как и большинство в этом топике
Senior Perl Developer @ Global Investment Bank - Jersey City, NJ
для обычного программиста 600$ в день
ЗЫ: ваш проект гавно - но мы же вам платим ©

-
- ст. лейтенант
- Сообщения: 1374
- Зарегистрирован: 2010-02-05 0:21:40
Re: [PERL] сколько прошло секунд от начала суток
900 - это corp-to-corp. Реально человеку дай Б-г половину получить в руки. Даже если 500 баксов в день, то это 60 баксов в час (причем плата "в день" меня несколько смущает. окажется, что надо работать по 12 часов в день без доплаты). 60 в час, минус все налоги, минус всякие там расходы на страховку и прочие радости, которые положены белым людям на постоянной работе (в отличии от контракта) и получается, что весьма так себе зарплатка. Побольше моей процентов на 30-40, но и гемора побольше на порядок.ProFTP писал(а): но там же платят $900 в день!
Senior Perl Developer @ Global Investment Bank - Jersey City, NJ
для обычного программиста 600$ в день
P.S. И все равно я не перл-программист.
