Показывать использование ЦП с использованием команды [duplicate]

У этого вопроса уже есть ответ здесь: Как / Где я могу проверить использование процессора ubuntu laptops? 3 ответа

Я хочу видеть использование ЦП. Я использовал эту команду:

top -bn1 | grep "Cpu(s)" | 
           sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | 
           awk '{print 100 - $1}'

Но он возвращает 100%. Каков правильный путь?

1
задан 7 March 2017 в 10:47

2 ответа

Почему бы не использовать htop [просмотр интерактивного процесса]? Чтобы установить его, откройте окно терминала и введите:

sudo apt-get install htop

Также см. [F3] для получения дополнительной информации и настройки.

34
ответ дан 24 May 2018 в 09:16

Я нашел решение, которое работает хорошо, вот оно:

top -bn2 | grep '%Cpu' | tail -1 | grep -P  '(....|...) id,' 

Я не уверен, но мне кажется, что первая итерация top с параметром -n возвращает некоторые dummy data, всегда одинаково во всех моих тестах.

Если я использую -n2, тогда второй кадр всегда динамический. Таким образом, последовательность:

Получите 2 первых кадра сверху: top -bn2 Затем из этих фреймов берутся только строки, содержащие «% Cpu»: grep '%Cpu'. Затем используйте только последнее вхождение / строку: `tail -1`` Затем получите значение простоя (имеет 4 или 5 символов, пробел,« id »): grep -P '(....|...) id,'

Надеюсь, это поможет, Paul

[ ! d9]

6
ответ дан 24 May 2018 в 09:16
  • 1
    На самом деле «фиктивные данные», но да, первая итерация top не имеет предыдущего образца для сравнения своих данных с, следовательно, очевидной ерундой . См. этот комментарий . – Campa 16 April 2018 в 11:09

Другие вопросы по тегам:

Похожие вопросы: