LINUX.ORG.RU

Как пользоватся top через Qt


0

1

Я хочу получать информацию о процессе по PID, а именно о использовании ЦПУ. Где то так:

top.program.start("bash", QStringList() << "-c" << "top -n 1 -p 1");
но получаю вот это:
TERM environment variable not set.
Ну хорошо, думал установлю через
QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
В итоге:
env.insert("TERM", "xterm");
top: failed tty get
А на варианты:
'sh': unknown terminal type
"'bash': unknown terminal type.
"'/bin/bash': unknown terminal type.

«ps» не подходит, так как мне нужно реальное в определенные промежутки времени... Ну как топ короче...

Или как еще можно узнать? (хочу смотреть загрузку своим процессом из него же...)

ihanick@dev:~$ env -i top -w 150  -n 1 -p 1 |cat
TERM environment variable not set.
ihanick@dev:~$ env -i top -b -w 150  -n 1 -p 1 |cat
top - 12:52:49 up 11 days,  2:47,  2 users,  load average: 0.46, 0.72, 0.72
Tasks:   1 total,   0 running,   1 sleeping,   0 stopped,   0 zombie
%Cpu(s):  8.3 us,  1.6 sy,  0.0 ni, 89.6 id,  0.2 wa,  0.3 hi,  0.0 si,  0.0 st
KiB Mem:   7861100 total,  4072000 used,  3789100 free,        4 buffers
KiB Swap:  2097148 total,  1155980 used,   941168 free.  1057188 cached Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
    1 root      20   0   34200   2776   1056 S   0.0  0.0   0:04.89 init
ihanick
()
Ответ на: комментарий от anonymous

http

О, кажется это именно то... Спасибо.

LinuxDebian ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.