Не могли бы вы сказать мне, каков оптимальный способ извлечь значение холостого хода из этой строки, используя grep?
CPU states: 0.1% user, 0.1% system, 0.0% nice, 99.8% idle
awk должен сделать трюк:
awk
top -n 1 | grep "idle" | awk '{ print $9 }'
Так как процент простоя является девятым значением, это $9.
$9
Вы можете использовать только grep:
grep
grep -Po '[0-9.%]+(?= idle)'