Comparação do registro de data e hora no AIX sem data -d

1

Eu tenho um script bash no AIX 7 que executa uma consulta de banco de dados e a saída que obtenho é um registro de data e hora no seguinte formato: 201607130319 .

Agora, gostaria de comparar o registro de data e hora com o horário atual ( date +%Y%m%d%H%M - 201607201802 ) e verificar a diferença em minutos. Eu basicamente preciso saber se a diferença é de mais de 10 minutos.

Eu sei que posso fazer isso no Linux usando date -d , mas não está disponível no AIX. Eu não tenho permissão para instalar nada no servidor, então quais são minhas opções aqui?

    
por Debianuser 20.07.2016 / 16:09

1 resposta

3

O Perl provavelmente está instalado, então você pode fazer

timestamp=$( some process )   # timestamp=201607130319
perl -se '
    use Time::Local;
    if ($ts =~ /^(\d{4})(\d\d)(\d\d)(\d\d)(\d\d)$/) {
        $time = timelocal(0,$5,$4,$3,$2-1,$1-1900);
        $now  = time;
        if (abs( $time - $now ) > 600) {
            print "more than 10 minutes\n";
        }
    }
' -- -ts="$timestamp"
    
por 20.07.2016 / 16:46