powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Самый лучший вариант для получения списка процессов
16 сообщений из 16, страница 1 из 1
Самый лучший вариант для получения списка процессов
    #36694320
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.
Мой крон должен следить за процессами и выявить те, которые не работают.
Для это я использовал команду:
Код: plaintext
/usr/bin/top -n  1  -u myuser> /home/......./topresult.txt;
Потом анализирую результат:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
i= 0 ; s=''; k=${#proc[*]};

while [ "$i" != "$" ]; do
mylist=(`cat /home/....../topresult.txt | grep ${proc[$i]}`); # массив proc список интересующих процессов
k1=${#mylist[*]};

if [ "$k1" -eq  0  ]; then 
s=$s' '${proc[$i]};
fi;
i=$((i+ 1 ))
done;

if [[ $s  != '' ]]; then
echo $s is NOT RUNNING;
else echo OK;
fi;
exit;

Но, говорят top тяжелая команда, и крон у меня должен работать через каждый 10 мин.

Команда
Код: plaintext
ps -f  -u myuser> /home/............../topresult.txt;
тоже выводит список процессов.
1. Теперь какой из них изпользовать для моей задачи ? Или предлагаете совсем другой вариант.
2. top находится в /usr/bin/, а где находится ps ? может быть так и оставлю без /usr/bin/ ?

Спасибо
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694386
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что значит не работают?

В какой оси кстати дело происходит?

ps умеет тыщу столбцов выводить в таком виде в каком надо

export UNIX95=XPG4
ps -A -o pid,pcpu,vsz,sz,etime,stime,comm
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694397
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев Денисчто значит не работают?

В какой оси кстати дело происходит?


Зависли, или каким то причинам перестали работать.
os у нас Linux
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694417
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FineЖуравлев Денисчто значит не работают?

В какой оси кстати дело происходит?


Зависли, или каким то причинам перестали работать.
os у нас Linux
у них время cpu не растет? или статус определенный?
Покажите кусочек top, что для вас зависший процесс а что нет
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694424
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В top-е они не видны. Какраз такип методом я определяю что они не работают.
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694479
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ps U myuser -o pid,pcpu,comm|awk '/0.0/{print $0}'

если надо вывести только pid-ы

ps U myuser -o pid,pcpu|awk '/0.0/{print $1}'

возможно вам надо
ps -U myuser


для лабараторки сойдет
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694481
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мож pgrep подойдёт? Только аккуратно с ним надо...
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694651
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа спасибо за ответы. Но видимо не так поняли суть моего вопроса:
.........
1. Теперь какой из них изпользовать для моей задачи ? Или предлагаете совсем другой вариант.
2. top находится в /usr/bin/, а где находится ps ? может быть так и оставлю без /usr/bin/ ?
...........
Какой из них исползьовать top, ps или есть другие варианты ?
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694805
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> whereis ps
ps: /bin/ps /usr/share/man/man1/ps.1.gz /usr/share/man/man1p/ps.1p.gz
> which ps
/bin/ps
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694832
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев Денис> whereis ps
ps: /bin/ps /usr/share/man/man1/ps.1.gz /usr/share/man/man1p/ps.1p.gz
> which ps
/bin/ps

Спасибо за ответ 2-го вопроса
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36694920
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я бы использовал ps
я правда не понял что такое "которые не работают", это за гранью моего понимания.
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36695184
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю как сказать. У нас на linux-е работает какая то система у которой есть собственные процессы. Их система поднимает во время перезапуска. Некоторые из этих процессов зависают или умирают.
Вот этих процессов надо выявить.
Окончательный мой вопрос состоится в том, что top или ps я должен использовать ? Мне сказали, что использовать top через каждый 10 мин. это тяжело для системы.
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36695943
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FineМне сказали, что использовать top через каждый 10 мин. это тяжело для системы.

Правильно сказали. Поцсказка...

Код: plaintext
1.
# time top ...
# time ps ...
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36696086
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Relic Hunter
Код: plaintext
1.
# time top ...
# time ps ...


Есть заметная разница.
Спасибо
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36697616
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Все таки помогиде пожалуйста до конца разобраться:
Вот результаты
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
time /usr/bin/top -n  1  -u myuser
real    0m0.513s
user    0m0.009s
sys     0m0.003s


time /bin/ps -f  -u myuser
real    0m0.011s
user    0m0.004s
sys     0m0.007s

Здесь видно, что для real и user тратил много времени, а вот для sys почему то наоборот.

real %e
user %U
sys %S

%E Elapsed real time (in [hours:]minutes:seconds).
%e (Not in tcsh.) Elapsed real time (in seconds).
%S Total number of CPU-seconds that the process spent in kernel mode.
%U Total number of CPU-seconds that the process spent in user mode.
...
Рейтинг: 0 / 0
Самый лучший вариант для получения списка процессов
    #36698396
Fine
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверно я должен учитывать результаты real.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Самый лучший вариант для получения списка процессов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]