Здравствуйте, уважаемые знатоки!
У меня такая проблема. Хочу узнать сколько времени проработал определенный процесс и если время больше заданного вырубить его. Задача вроде бы тривиальная и должна много где использоваться хотя в сети найти ничего стоящего не могу.
Процессы по заданному условию я отловил используя псевдо-файловую систему /proc. Там у каждого процесса есть дерриктория в которой лежит файлик stat содержащий все необходимые данные. Вот вопрос как определить какие из этих цифр являються временем работы процесса. Конкретно мне нужно поле STIME которое выводиться при комманде PS -eux, вернее его данные.
Если кто сталкивался помогите плз...
>[оверквотинг удален]
> У меня такая проблема. Хочу узнать сколько времени
>проработал определенный процесс и если время больше заданного вырубить его. Задача
>вроде бы тривиальная и должна много где использоваться хотя в сети
>найти ничего стоящего не могу.
> Процессы по заданному условию я отловил используя псевдо-файловую
>систему /proc. Там у каждого процесса есть дерриктория в которой лежит
>файлик stat содержащий все необходимые данные. Вот вопрос как определить какие
>из этих цифр являються временем работы процесса. Конкретно мне нужно поле
>STIME которое выводиться при комманде PS -eux, вернее его данные.
> Если кто сталкивался помогите плз...Ну вот зачем так сложно?
Есть же ps отпарсите ее вывод и будет счастье , а /proc он не на всяком юниксе есть..
Может лучше сразу процесс с нужным ulimit запускать? А если процесс запускаете не вы -- тогда да, намного удобнее разбирать вывод ps. Тем более, Perl.
>Здравствуйте, уважаемые знатоки!
> У меня такая проблема. Хочу узнать сколько времени
>проработал определенный процесс и если время больше заданного вырубить его.может, timeout?
если, конечно, процесс запускаете вы
timeout время_в_секундах команда