Скрипт Bash, арифметика с переменными / строками с плавающей точкой, которые их представляют

Я пытаюсь создать простой сценарий, который принимает средний процент загрузки процессора каждую минуту. Я делаю это с помощью sar команда от sysstat пакет.

Вот мой текущий код:

#!/bin/bash
sar -u 1 10 | grep Average > /custom/tmp/idlefile
idleval=`awk '{print $8}' /custom/tmp/idlefile`
rm /custom/tmp/idlefile
rm -rf /custom/idlepercentage/*
touch /custom/idlepercentage/$idleval
exit 0

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

Я попытался сделать это путем:

loadval=100.00-`echo $idleval`

но это кричит на меня и не будет делать то, что я прошу это сделать.

Кажется, что это не будет делать основную арифметику, чтобы сделать 100% - бездействующий процент, чтобы дать процент загрузки.

1 ответ

Решение

Это должно работать:

loadval=$(sar -u 1 10 | awk '{print 100-$8}')
Другие вопросы по тегам