Альтернативный вариант команды даты в AIX

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

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

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

Выход -> 1542162660


person Tushar    schedule 16.11.2018    source источник


Ответы (1)


Вы можете сделать что-то подобное с 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
person Lorinczy Zsigmond    schedule 16.11.2018