For at finde oppetiden for en given Linux-proces i millisekunder, kan du følge disse trin:
Først skal du finde PID for den proces, du er interesseret i. Dette kan gøres ved hjælp af kommandoen ps
eller pgrep
. For eksempel:
ps aux | grep [process_name]
eller
pgrep [process_name]
Når du har PID, kan du læse processtatistikken fra /proc
filsystemet. Brug følgende kommando:
cat /proc/[PID]/stat
Den 22. værdi i outputtet fra /proc/[PID]/stat
er starttidspunktet for processen i ticks siden systemstart. For eksempel:
cat /proc/[PID]/stat | awk '{print $22}'
For at konvertere ticks til millisekunder, skal du kende systemets tick rate, som kan findes ved hjælp af:
getconf CLK_TCK
Antag, at tick rate er 100 (standard på mange systemer), kan du konvertere ticks til sekunder og derefter til millisekunder:
uptime_in_ticks=$(cat /proc/[PID]/stat | awk '{print $22}')
tick_rate=$(getconf CLK_TCK)
uptime_in_seconds=$(echo "scale=2; $uptime_in_ticks / $tick_rate" | bc)
uptime_in_milliseconds=$(echo "$uptime_in_seconds * 1000" | bc)
For at finde oppetiden i millisekunder, skal du trække starttidspunktet fra den aktuelle tid. Den aktuelle tid i ticks kan findes ved at læse /proc/uptime
:
current_time_in_ticks=$(awk '{print $1 * '$tick_rate'}' /proc/uptime)
process_start_time_in_ticks=$(cat /proc/[PID]/stat | awk '{print $22}')
uptime_in_ticks=$(echo "$current_time_in_ticks - $process_start_time_in_ticks" | bc)
uptime_in_milliseconds=$(echo "$uptime_in_ticks * 1000 / $tick_rate" | bc)
Ved at følge disse trin kan du finde oppetiden for en given Linux-proces i millisekunder.
Med Handyhand kan du nemt få hjælp til dine Linux-opgaver. Opret din opgave gratis, og modtag bud fra dygtige hjælpere på få minutter. Uanset om det drejer sig om installation, fejlfinding eller konfiguration, er der altid en, der kan assistere dig. Få den hjælp, du har brug for, hurtigt og effektivt!