Telecommunications & Linux
Bash check process running time
Chequear el tiempo de ejecución de un proceso en linux
En estos dias me encontre con el problema de chequear cuanto tiempo lleva corriendo un script en linux para poder matarlo si excede x cantidad de segundos.
Para ello cree una pequeña funcion en bash:
function checkRunningTime {
PTIME=$(ls -ld /proc/$1 | awk '{ print $6" "$7 }')
T1=$(date +%s -d "$PTIME")
T2=$(date +%s)
((DIFF=T2 - T1))
echo $DIFF
}
Para utilizarla solo se le pasa como parametro el PID. Para sacar el PID con un simple ps | awk se obtiene.
checkRunningTime `ps aux | grep "nombreproceso" | grep -v "grep" |awk '{ print $2 }'`