The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"from_unixtime -> reverse"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"from_unixtime -> reverse"
Сообщение от EHoT emailИскать по авторуВ закладки(ok) on 17-Авг-04, 08:55  (MSK)
очень хочется узнать 8)
многие сталкивались, теперь я..
squid - > access.log -> дата -> mysql

в шел скрипте
awk '{print "INSERT INTO test (ip,bytes,link,trans,time)VALUES(\""$3"\","$5",\""$7"\",\""$9"\",from_unixtime("$1"));"};'
< /usr/local/squid/logs/squidforparse1.log | mysql -D traffic -u root --password=password

а как сделать тоже самое в перловке?
функция from_unixtime там отсутствует, есть localtime...
но как преобразовать = хоть убей
поможите люди добрые 8)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "from_unixtime -> reverse"
Сообщение от ihor Искать по авторуВ закладки on 17-Авг-04, 10:17  (MSK)
($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($yourtime);
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "from_unixtime -> reverse"
Сообщение от EHoT emailИскать по авторуВ закладки(ok) on 20-Авг-04, 09:40  (MSK)
система фрибсд 5.2 эта команда в скрипте выполняетцца как
($hour, $min, $sec, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(1091433560.730);
print "$hour:";
print "$min:";
print "$sec\n";
print "$mday-";
print "$mon-";
print "$year\n";
#print "$wday:";
#print "$yday:";
#print $isdst;

имеем:
Name "main::isdst" used only once: possible typo at ./file.sh line 47.
Name "main::yday" used only once: possible typo at ./file.sh line 47.
Name "main::wday" used only once: possible typo at ./file.sh line 47.
20:59:11
2-7-104

как добиться чтобы те переменные которые мне не нужны не отображались но скрипт не ругался? и почему год 104 а не 2004?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "from_unixtime -> reverse"
Сообщение от ihor Искать по авторуВ закладки on 20-Авг-04, 10:11  (MSK)
>система фрибсд 5.2 эта команда в скрипте выполняетцца как
>($hour, $min, $sec, $mday, $mon, $year, $wday, $yday, $isdst) =
странно, у меня что в Windows, что во FreeBSD 4.8 (Perl 5.8.0)
порядок такой, как я написал (и в хелпе это так описывается).

чтобы не брать лишних переменных, просто не указывай их в скобках.
т.е. будет:
($hour, $min, $sec, $mday, $mon, $year) = ...
если тебе не нужны переменные из середины списка, поставь вместо переменных undef:
($hour, $min, undef, undef, $mon, $year) = ...

вместо указания отдельных переменных можно результат записать в массив и взять из него только нужные элементы:
@fields = localtime(time);
$sec = $fields[0]; # в "моей" нотации
...

вообще-то месяц возвращается в диапазоне 0..11, год - как кол.-во лет с 1990, т.е. чтобы получить реальный год, нужно: $year += 1900;
день недели - 0..6, день года - 0..364 (0..365).

вообще посмотри
man perlfunc
для localtime.

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




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

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