![](https://seccdn.libravatar.org/avatar/b3b712487be78303324fd8e6c349084a.jpg?s=120&d=mm&r=g)
Hola, me respondo yo mismo tras una busqueda mas intensa en el tío google :-) On 4/14/05, miguel gmail <miguel.listas@gmail.com> wrote:
Hola,
siento preguntar algo muy OT (ni mas ni menos que perl bajo windows 2k), pero me estoy empezando a cansar de rastrear la ayuda de perl sin comprender de que me habla... :-(. Y maldita la expansión de las comillas que hace el cmd de windows :-| (el proximo que me diga que windows es mas facil que unix le muerdo la nuez).
Acabo de empezar a usar perl, y me ha tocado hacerlo bajo windows. Lo que me han pedido hacer es comprobar la velocidad de transferencia FTP entre algunos puestos locales y servidores, que pueden ser solaris, aix, windows (nt y 2k) y un debian para comprobar la calidad de la red.
El FTP lo tengo hecho (bendito perl y su CPAN), pero no se como obtener el numero de segundos que toma la transferencia. Estoy haciendo algo como:
$fecha_inicio = (localtime);
<<conexion, transferencia y cierre de ftp>>
$fecha_fin = (localtime);
y asi puedo ver a ´ojímetro´ cuanto tarda en transferir el fichero. Pero no puedo automatizar el proceso para que me devuelva una tasa de transferencia, para lo que necesito el número de segundos transcurridos entre el inicio y el fin de la transferencia.
Alguna idea?
Encontre la solucion, era bastante sencilla (mi ti google sabe bastante de esto ;-) ): $fecha_inicio = (localtime); chomp ($fecha_inicio); # separamos la fecha por espacios: ($vars1, $vars2, $vars3, $vars4, $vars5) = split(/ /,$fecha_fin); # el cuarto campo es el de horas:minutos:segundos, que separamos por el ´:´ : ($hora, $minutos, $segundos) = split (/:/,$vars4); y de ahi con unas pocas operaciones algebraicas, y repitiendo el proceso para el inicio y el fin, ya sale el numero de segundos total. Por supuesto, hay formas mas perlisticas de hacerlo, seguro, pero yo acabo de empezar con perl... ;-) -- Saludos, miguel