Получить общее использование ЦП с терминала на Mac? [Дубликат]

Всякий раз, когда вы хотите использовать переменные переменные, вероятно, лучше использовать словарь. Поэтому вместо записи

$foo = "bar"
$$foo = "baz"

вы пишете

mydict = {}
foo = "bar"
mydict[foo] = "baz"

Таким образом, вы не будете случайно перезаписывать ранее существовавшие переменные (что является аспектом безопасности), и вы можете иметь разные " Пространства имен». [/ д2]

2
задан Wafflepi 15 June 2015 в 21:42
поделиться

1 ответ

Это работает на Mac (включает в себя%):

ps -A -o %cpu | awk '{s+=$1} END {print s "%"}'

Чтобы разбить это немного:

ps - это инструмент состояния процесса. Большинство * nix как операционные системы поддерживают его. Есть несколько флагов, которые мы хотим передать:

  • -A означает все процессы, а не только те, которые работают как вы.
  • -o позволяет нам указать результат, который мы хотим. В этом случае все это мы хотим для столбца cpu% вывода ps.

Это даст нам список всех процессов cpu, таких как

0.0
1.3
27.0
0.0

Теперь нам нужно добавить этот список, чтобы получить окончательное число, поэтому мы выводим вывод ps на awk. awk - довольно мощный инструмент для анализа и работы с текстом. Мы просто просто добавляем цифры, затем распечатываем результат и добавляем «%» в конец.

20
ответ дан vcsjones 21 August 2018 в 07:06
поделиться
  • 1
    Этот метод не очень точен, поскольку эти значения округлены. Реальное использование ЦП может быть намного больше или намного меньше, что можно проверить с помощью Activity Monitor. – vitormm 2 June 2017 в 21:58
  • 2
    Я использую эту команду, чтобы получить% использования процессора на Mac, но я получаю определенные процентные значения, которые больше 100. Любая идея, почему это может быть? – Questionnaire 31 March 2018 в 07:09
  • 3
    не работает над маками тоже? – Slavic 3 April 2018 в 22:36
Другие вопросы по тегам:

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