¿Cómo puedo obtener el tiempo en milisegundos en Perl sin instalar ningún paquete adicional?Obtenga tiempo en milisegundos sin instalar un paquete adicional?
Estoy ejecutando Linux.
¿Cómo puedo obtener el tiempo en milisegundos en Perl sin instalar ningún paquete adicional?Obtenga tiempo en milisegundos sin instalar un paquete adicional?
Estoy ejecutando Linux.
Time::HiRes
ha sido parte del núcleo desde Perl 5.7.3. Para verificar su disponibilidad, verifique la versión de Perl, perl -v
, o intente usarla con perl -e 'use Time::HiRes;'
, ambos desde la línea de comando.
Ejemplo de uso:
use Time::HiRes qw/ time sleep /;
my $start = time;
sleep rand(10)/3;
my $end = time;
print 'Slept for ', ($end - $start) , "\n";
Para construir sobre el comentario de Konerak, si no está allí o no puede ser utilizado, uso nativo de Linux comandos a través de acentos abiertos:
sub time_since_epoch { return `date +%s.%N` }
print time_since_epoch;
debe ser' date +% s.% N' – mob
Para cargar y/o verificar un módulo desde la línea de comando puede usar: perl -MTime :: HiRes -e 1 en lugar de: perl -e 'uso Time :: HiRes' – JRFerguson
@mob: Gracias por la corrección. @James_R_Ferguson: A propósito omití la bandera '-M' porque no quería confundir al que pregunta con la sintaxis (usar' 1' en lugar de '''' es una pequeña sugerencia :). – Zaid
'date +% N 'te da nanosegundos ... ¿puedes trabajar desde allí? % s da segundos de 1970 ... – Konerak
¿Por qué no puedes usar 'Time :: HiRes'? – Polynomial
¿Por qué no puedes instalar un módulo? De todos modos, dependiendo de su versión de Perl, probablemente tenga disponible Time :: HiRes (http://perldoc.perl.org/Time/HiRes.html). –