¿Cómo puedo medir el tiempo de ejecución de un proceso de terminal?

127

Estoy tratando de medir el tiempo de ejecución de un proceso que llamo a través de la línea de comando (es decir, quiero saber cuánto tarda el proceso en finalizar). ¿Hay algún comando que pueda agregar al comando llamando al proceso que logrará esto?

    
pregunta htorque 17.07.2011 - 14:26

5 respuestas

158

Agregue time antes del comando que desea medir.

El resultado será similar a:

real    0m0.606s
user    0m0.000s
sys     0m0.002s

Explicación sobre real , user y sys (de man time ):

  • real : tiempo real transcurrido (reloj de pared) utilizado por el proceso, en segundos.
  • user : número total de segundos de CPU que el proceso utilizó directamente (en modo de usuario), en segundos.
  • sys : número total de segundos de CPU utilizados por el sistema en nombre del proceso (en modo kernel), en segundos.
respondido por el ninjalj 17.07.2011 - 14:30
32

Para una medición delta línea por línea, intente con gnomon .

  

Es una utilidad de línea de comando, un poco como los ts de moreutils, para anteponer la información de marca de tiempo a la salida estándar de otro comando. Útil para procesos de larga duración en los que desea un registro histórico de lo que lleva tanto tiempo.

     

Canalizar cualquier cosa a gnomon anexará una marca de tiempo a cada línea, indicando cuánto tiempo esa línea era la última línea en el búfer, es decir, cuánto tiempo tardó en aparecer la siguiente línea. Por defecto, gnomon mostrará los segundos transcurridos entre cada línea, pero eso es configurable.

    
respondido por el Janus Troelsen 27.07.2016 - 12:45
22

Puedes usar time :

time ls -R
    
respondido por el William Niu 17.07.2011 - 14:30
5
date +"%T" && cp -r ./file  /destination/folder/here && date +"%T"

Ejecutar este comando en el terminal le dará el tiempo total para hacer frente a un archivo

    
respondido por el user314473 11.08.2014 - 07:20
4

Ocasionalmente, me resulta necesario un cronómetro para contar cuánto tiempo lleva iniciar una acción como el inicio de mi aplicación, en cuyo caso muchas de las soluciones aquí no son útiles.

Para esto, me gusta usar sw .

Instalar

wget -q -O - http://git.io/sinister | sh -s -- -u https://raw.githubusercontent.com/coryfklein/sw/master/sw

Uso

sw
 - start a stopwatch from 0, save start time in ~/.sw
sw [-r|--resume]
 - start a stopwatch from the last saved start time (or current time if no last saved start time exists)
 - "-r" stands for --resume
    
respondido por el Cory Klein 23.06.2017 - 23:11

Lea otras preguntas en las etiquetas