Question Obtenez le temps passé par un processus sous Linux


Je veux mesurer le temps qu'il faut pour sauvegarder une base de données PostgresSql, je sais que je peux le faire time pg_dump ...., mais que se passe-t-il si j’ai déjà lancé la commande pg_dump ?.

Le processus a déjà pris plus d’une demi-heure, et je ne veux pas le rompre. Je suis sûr que cela prendra encore une heure (et je serai chez moi à ce moment-là). J'aimerais savoir demain combien de temps cela a pris.


5
2018-06-14 20:12


origine




Réponses:


Vous écrivez ceci dans un fichier, et vous? Le temps de modification du fichier serait votre réponse.


4
2018-06-14 20:21



Oui !, merci c'est ce que je cherchais. - Leonardo Ramé
les réponses simples sont toujours géniales. - Hyppy


Il suffit de montrer l'heure de début

ps -ax  -o cmd,lstart | grep pg_dump

Ou horodatage

ls --time-style=+%s -ld /proc/PROCESS_PID

Ou secondes écoulées

ls --time-style=+%s -ld /proc/PROCESS_PID | cut -d " " -f6 | \
xargs echo "`date +%s` - $1" | bc

3
2018-06-14 20:39





trouvez le pid de votre processus, dites-le 999

lance ça:

while ps -p 999 -o pid; do  date; sleep 20; done

dans une coquille. ce qui précède s'arrêtera lorsque votre processus sera terminé.

vous pouvez dormir plus si la granularité que vous voulez est plus grande.


2
2018-06-14 20:29