Vraag Hoe kan ik de uitvoeringstijd van een terminalproces meten?


Ik probeer de uitvoeringstijd te meten van een proces dat ik bel via de opdrachtregel (d.w.z. ik wil weten hoe lang het duurt voordat het proces is voltooid). Is er een commando dat ik kan toevoegen aan het commando dat het proces roept dat dit zal bereiken?


129
2017-07-17 12:26


oorsprong




antwoorden:


Toevoegen time voor het commando dat je wilt meten.

De uitvoer ziet er als volgt uit:

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

Uitleg over real, user en sys (van man time):

  • real: Verstreken reële (wandklok) tijd gebruikt door het proces, in seconden.
  • user: Totaal aantal CPU-seconden dat het proces direct (in gebruikersmodus), in seconden heeft gebruikt.
  • sys: Totaal aantal CPU-seconden dat door het systeem wordt gebruikt namens het proces (in kernelmodus), in seconden.

159
2017-07-17 12:30



@ninjalj, kunt u meer informatie geven over wat de real, user, en sys keer dat deze opdracht terugkeert? - Christopher Kyle Horton
@JacobVlijm Dit antwoord is niet zo uitgebreid. :) Je zou in je commentaar kunnen bewerken en het zo maken. - muru
Merk op dat je misschien nodig hebt sudo apt-get install time als je een shell gebruikt waar time is niet gebouwd. - poolie


Voor een lijn-voor-regel delta-meting, probeer gnomon.

Het is een commandoregelhulpprogramma, een beetje zoals moreutils's ts, om tijdstempelinformatie aan de standaarduitvoer van een andere opdracht toe te voegen. Handig voor langlopende processen waarbij u een historisch overzicht wilt van wat er zo lang aan de hand is.

Als u iets doorvoert naar gnomon, wordt aan elke regel een tijdstempel toegevoegd, waarmee wordt aangegeven hoe lang die regel de laatste regel in de buffer was - dat wil zeggen, hoe lang het duurde voordat de volgende regel werd weergegeven. Standaard geeft gnomon de seconden weer die zijn verstreken tussen elke regel, maar die kan worden geconfigureerd.

gnomon demo


32
2017-07-27 10:45



Dit is behoorlijk glad. - Nathan Arthur
(typ in link, gelukkig URL ok). Je kunt het installeren met sudo npm i gnomon -g als je hebt npm. Weet niet zeker hoe goed het werkt tegen "progress" -regels met '\ r' (blijf op dezelfde lijn): in dat geval zou ik het leuk vinden om alles te tellen als één lange regel, niet als afzonderlijke regel. - Tomasz Gandor
dus we pijpen hem naar gnomon! dat is het ? - Ciasto piekarz


Je kunt gebruiken time:

time ls -R

22
2017-07-17 12:30





date +"%T" && cp -r ./file  /destination/folder/here && date +"%T"

Het uitvoeren van deze opdracht in de terminal geeft u de totale tijd voor het verwerken van een bestand


5
2017-08-11 05:20





Af en toe merk ik dat ik een stopwatch nodig heb om te tellen hoe lang het duurt voor een actie zoals het opstarten van mijn app, in welk geval veel van de oplossingen hier niet nuttig zijn.

Hiervoor gebruik ik graag sw.

sw

Installeren

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

Gebruik

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

4
2018-06-23 21:11