Как написать сценарий оболочки, чтобы получить время простоя данного процесса?

1

Я новичок в Linux. Я не знаю о сценариях оболочки. Мне нужно получить время простоя процесса Linux. Я пишу программу Java. Но для моей потребности нет команд Linux. Как написать сценарий оболочки, который может это сделать? Затем я могу выполнить этот скрипт с Java.

Теги:

1 ответ

2
Лучший ответ

Вот ты где:

#! /bin/bash
# Assumptions:
# Process is attached to a tty.
#

[[ -z "$1" ]] && echo "Usage: $0 pid" && exit 1

[[ "$1" != +([0-9]) ]] && echo "$1 is not a valid pid" && exit 1

PID="$1"
W=$(which w)
PS=$(which ps)
SED=$(which sed)
AWK=$(which awk)
TTY=$($PS -o tty4 $PID)
TTNo=$(echo "$TTY" | $SED -e '/TTY/d')

TIME=$($W | $SED -n -e "/pts\/$TTNo/p" |  $AWK '{ print $5 }')

echo $PID has been idle for $TIME

Ещё вопросы

Сообщество Overcoder
Наверх
Меню