El comando tiempo es uno de los comandos de Linux menos conocidos, pero se puede usar para mostrar cuánto tiempo tarda en ejecutarse un comando.
Esto es útil si usted es un desarrollador y desea probar el rendimiento de su programa o script.
Esta guía enumerará los interruptores principales que utilizará con el comando tiempo junto con sus significados.
Cómo usar el comando de tiempo
La sintaxis del comando de tiempo es la siguiente:
Por ejemplo, puede ejecutar el comando ls para listar todos los archivos de una carpeta en un formato largo junto con el comando tiempo.
tiempo ls -l
Los resultados del comando de tiempo serán los siguientes:
real 0m0.177s
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.usuario 0m0.156s
sistema 0m0.020sLas estadísticas mostradas muestran el tiempo total que se tarda en ejecutar el comando, la cantidad de tiempo que se pasó en modo usuario y la cantidad de tiempo que se pasó en modo kernel.
Si tienes un programa que has escrito y quieres trabajar en el rendimiento, puedes ejecutarlo junto con el comando tiempo una y otra vez e intentar mejorar las estadísticas.
Por defecto, la salida se muestra al final del programa, pero quizás quiera que la salida vaya a un archivo.
Para dar salida al formato a un archivo, utilice la siguiente sintaxis:
tiempo -o
tiempo --salida=Todos los interruptores para el comando de tiempo deben especificarse antes del comando que desea ejecutar.
Si está afinando el rendimiento, es posible que desee añadir la salida del comando de tiempo al mismo archivo una y otra vez para que pueda ver una tendencia.
Para ello, utilice la siguiente sintaxis:
tiempo -a
tiempo --apendarFormateo de la salida del comando de tiempo
Por defecto, la salida es la siguiente:
real 0m0.177s
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.usuario 0m0.156s
sistema 0m0.020sHay un gran número de opciones de formato como se muestra en la siguiente lista
- C - Argumentos de nombre y línea de comandos usados
- D - Tamaño promedio del área de datos no compartidos del proceso en kilobytes
- E - Tiempo transcurrido en formato de reloj
- F - Número de fallos de página
- I - Número de entradas del sistema de ficheros por proceso
- K - Uso promedio total de memoria del proceso en kilobytes
- M - Tamaño máximo del conjunto residente del proceso durante la vida en kilobytes
- O - Número de salidas del sistema de ficheros por proceso
- P - Porcentaje de CPU que recibió el trabajo
- R - Número de fallos menores o recuperables en la página
- S - Número total de segundos de CPU utilizados por el sistema en modo kernel
- U - Número total de segundos de CPU utilizados por modo de usuario
- W - Número de veces que el proceso fue intercambiado fuera de la memoria principal
- X - Cantidad promedio de texto compartido en el proceso
- Z - Tamaño de página del sistema en kilobytes
- c - Número de veces que el proceso se cambió de contexto
- e - Tiempo real transcurrido utilizado por el proceso en segundos
- k - Número de señales entregadas al proceso
- p - Tamaño promedio de pila no compartida del proceso en kilobytes
- r - Número de mensajes de socket recibidos por el proceso
- s - Número de mensajes de socket enviados por el proceso
- t - Tamaño promedio de los conjuntos residentes del proceso en kilobytes
- w - Número de veces que el proceso se cambió de contexto voluntariamente
- x - Salir del estado del comando
Puede utilizar los modificadores de formato como se indica a continuación:
>time -f "Elapsed Time = %E, Inputs %I, Outputs %O"
La salida para el comando anterior sería algo así:
Puede mezclar y combinar los interruptores según sea necesario.
Si desea añadir una nueva línea como parte de la cadena de formato, utilice el carácter de nueva línea como se indica a continuación:
>time -f "Elapsed Time = %E Entradas %I Salidas %O"
Resumen
Para obtener más información sobre el comando de tiempo, lea la Página de manual de Linux ejecutando el siguiente comando:
tiempo de mano de obra
El cambio de formato no funciona directamente en Ubuntu. Necesita ejecutar el comando de la siguiente manera:
/usr/bin/tiempo