Как я могу отформатировать метку времени в Perl?

Я хотел бы добраться, это добавляет метку времени к форматированию:

01/13/2010 20:42:03 - -

Где это всегда - 2 цифры для числа за исключением года, где это - 4 цифры. И это основано на 24-часовых часах.

Как я могу сделать это в Perl? Я предпочитаю собственные функции.

16
задан Sinan Ünür 27 January 2010 в 20:27
поделиться

2 ответа

POSIX предусматривает Strftime :

$ perl -MPOSIX -we 'print POSIX::strftime("%m/%d/%Y %H:%M:%S\n", localtime)'
01/27/2010 14:02:34

Возможно, вам может быть соблазн написать что-то вроде:

my ($sec, $min, $hr, $day, $mon, $year) = localtime;
printf("%02d/%02d/%04d %02d:%02d:%02d\n", 
       $day, $mon + 1, 1900 + $year, $hr, $min, $sec);

как средство избежания POSIX . Не AFAIK, POSIX.PM был в основе с 1996 или 1997 года.

39
ответ дан 30 November 2019 в 16:24
поделиться

Попробуйте Дата::Формат подпрограммы форматирования из CPAN.

1
ответ дан 30 November 2019 в 16:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: