Отправляет email-рассылки с помощью сервиса Sendsay

Перевод времени из UNIX-формата в обычный и обратно

Здравствуйте!

Как можно в Linux перевести время из UNIX-формата (это которое с 00:00
01.01.1970) в обычный и обратно? Есть ли какая-нибудь утилита или что-то
вроде того? Искал по man'ам - не нашел. Google, как это ни странно, тоже не
помог - не могу сформулировать правильно запрос :(

Спасибо за ответы-советы.

Ответить   9A4172 Fri, 9 Sep 2005 18:08:36 +1100 (#433954)

 

Ответы:

В сообщении от 9 сентября 2005 11:08 9A4172 написал(a):

с помощью date, правда это не очень удобно:

date +%s -d '1980-01-01 00:00:00+0000'
date -d '1970-01-01 00:00:00+0000 + 315532800 sec'

Ответить   "Sergey B. Khvatov" Fri, 9 Sep 2005 12:20:10 +0400 (#433963)

 

В сообщении от Пятница 9 Сентябрь 2005 19:20 Sergey B. Khvatov написал(a):

Большое спасибо, работает!
Только одна проблема - у меня задан вот такой псевдоним:

alias date='date '\''+%A, %x, %X'\'''

и получается вот такое:

date +%s -d '1980-01-01 00:00:00+0000'
date: too many non-option arguments: +%s
Try `date --help' for more information.

Если снять alias, все работает. Можно ли как-то оставить свой псевдоним для

date и чтоб работало преобразование?

Ответить   9A4172 Sun, 11 Sep 2005 21:01:18 +1100 (#435193)

 

В сообщении от 11 сентября 2005 14:01 9A4172 написал(a):

Khvatov написал(a):

Чтобы блокировать подстановку, экранируйте имя программы:

'date' -d ...

Но вообще идея подобных алиасов порочна - лучше не
запутывать самого себя, а давать им отличающиеся имена (это
относится и к так любимыми дистрибуторами ls и rm :-)

Ответить   "Sergey B. Khvatov" Mon, 12 Sep 2005 10:40:59 +0400 (#435579)

 

В сообщении от 1126510859 секунд после начала Эпохи Sergey B. Khvatov
написал(а):

Верно. Aliases - штука вредная.

Ответить   Konstantin Korikov Mon, 12 Sep 2005 13:31:59 +0300 (#435955)

 

On Mon, 12 Sep 2005 13:31:59 +0300
Konstantin Korikov <lostcl***@u*****.fm> wrote:

А для меня - вещь незаменимая, а отменяется действие алиса добавлением
обратного слеша перед командой:
\date

Ответить   Dark Coder Tue, 13 Sep 2005 09:49:15 +0400 (#436303)

 

В сообщении от Понедельник 12 Сентябрь 2005 17:40 Sergey B. Khvatov
написал(a):

Большое спасибо! Я про такое не знал.

Да, вы правы. Псевдоним уже сменил :)

Ответить   9A4172 Tue, 13 Sep 2005 21:00:37 +1100 (#436536)

 

В сообщении от Воскресенье 11 Сентябрь 2005 21:01 9A4172 написал(a):

Черт, извините, что-то я затупил :) Можно просто задать другой alias для
"своего" формата date, только и всего.

Ответить   9A4172 Mon, 12 Sep 2005 18:10:44 +1100 (#435802)

 

http://www.onlineconversion.com/unix_time.htm

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 21452; Возраст листа: 777; Участников: 1417
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/433967

Ответить   Fri, 9 Sep 2005 12:28:11 +0400 (MSD) (#433967)

 

В сообщении от Пятница 9 Сентябрь 2005 19:28 volk написал(a):

Спасибо за ссылку. Правда, онлайновая служба - это чересчур, даже если бы у

меня была выделенка :)

Ответить   9A4172 Sun, 11 Sep 2005 21:02:43 +1100 (#435192)

 

9A4172 wrote:

Конвертор unix time format в обычный вид. В обратную сторону еще не
доделал. Кто хочет доделать, особенно вопрос оптимизации кода - буду
очень благодарен (хотя нечего там оптимизировать). Кому надо - вэлкам.

файл utf2date
доступен по адресу: webfile.ru/509299 в течение 7 дней до 09.09.2005 14:39.

Исходники его же:

файл utf2date.c
доступен по адресу: webfile.ru/509307 в течение 7 дней до 09.09.2005 14:42.

P.s. Программеров не ругать за код - я не программер.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 21455; Возраст листа: 777; Участников: 1417
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/434051

Ответить   daks Fri, 09 Sep 2005 13:44:44 +0300 (#434051)

 

В сообщении от Пятница 9 Сентябрь 2005 21:44 daks написал(a):

Большое спасибо!
Работает, но результаты не совпадают при переводе вашей программой и
способом, указанным Сергеем Хватовым:

$ date -d '2005-09-12 02:27:25' +%s
1126452445
$ date -d '1970-01-01 00:00:00+0000 + 1126452445 sec'
Пнд Сен 12 02:27:25 VLAST 2005
$ ./utf2date --utf 1126452445
year 2005, month 9, day 11, 15:27:25

Разница ровно в 11 часов, т.е., как я понимаю utf2date выдает время по
Гринвичу? (живу в Приморье - 9-й часовой пояс + декретный час + летнее время)
Если вы не программер, то я тогда даже на чайника не тяну :) Так что
проверить вашу программу не могу - не понимаю ни черта :)

Ответить   9A4172 Mon, 12 Sep 2005 02:36:52 +1100 (#435801)