Ubuntu bc странное поведение

В сценарии Bash существует странное поведение. Попытка запустить следующие строки в двух разных системах.

Сценарий:

cpuIdle=$(mpstat 5 1 | grep Average | awk '{  print $12 }')
cpuUsage=$(bc <<< "100.0-$cpuIdle")

И вот детали машин.

Сценарий: [ ! d2]

Ubuntu 14.04.04 LTS Linux 4.2.0-36-generic #42~14.04.1-Ubuntu SMP Fri May 13 17:27:22 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux awk --version = GNU Awk 4.0.1 bash --version = GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)

System-2:

Ubuntu 14.04.04 LTS Linux 4.4.0-22-generic #40-Ubuntu SMP Thu May 12 22:03:46 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux Linux 4.2.0-36-generic #42~14.04.1-Ubuntu SMP Fri May 13 17:27:22 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux bash --version = GNU bash, version 4.3.42(1)-release (x86_64-pc-linux-gnu)

Скрипт работает свободно на System-1, но дает следующую ошибку на System-2: во время работы bc:

(standard_in) 1: syntax error

Я могу подтвердить, что в обеих системах cpuIdle vairable устанавливается правильно (1-я строка скрипта). [ ! d20]

Я также могу подтвердить, что bc работает без проблем в обеих системах, когда я устанавливаю переменную cpuIdle вручную ( 1-я строка скрипта ). [!d23 ]

Не могу решить, является ли это ошибкой или моей ошибкой. Любое предложение или идеи?

1
задан 7 June 2016 в 01:07

0 ответов

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

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