Опция команды альтернативной даты в AIX - PullRequest
0 голосов
/ 16 ноября 2018

Я хочу преобразовать конкретную дату в метку времени в AIX. Следующая команда работает в GNU / LINUX. Может кто-нибудь помочь мне сделать это в AIX?

Команда, работающая на GNU / LINUX:

Команда -> date -d"Nov 14 02:31" "+%s"

Вывод -> 1542162660

1 Ответ

0 голосов
/ 16 ноября 2018

Вы можете сделать что-то подобное с Perl, если у вас есть POSIX::strptime Пример программы (totimestamp.pl):

#!/usr/bin/perl

use strict;
use POSIX ("tzset", "mktime");
use POSIX::strptime;

POSIX::tzset ();

my $ARGC= scalar (@ARGV);
my $tstamp;

if ($ARGC < 1) {
    $tstamp= time ();

} else {
    my $tstr= $ARGV[0];
    my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst);
    ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = 
    POSIX::strptime($tstr, "%b %d %H:%M:%S %Y");

    $tstamp= POSIX::mktime ($sec, $min, $hour, $mday, $mon, $year);
}

printf ("%d\n", $tstamp);

Использование:

perl ./totimestamp.pl "Nov 16 14:40:00 2018"
1542375600
...