echo 'ibase=16;C06D1000-C06A5E78' | bc
176520
Обратите внимание, что поддерживаются только шестнадцатеричные цифры UPPER CASE, поскольку строчные буквы будут конфликтовать с именами функций и переменных, поэтому в вашем примере ( var1 - var2
) вы получили 0
Если вам также нужен ответ в шестнадцатеричном виде, просто установите obase
переменную:
echo 'obase=16;ibase=16;C06D1000-C06A5E78' | bc
2B188
PS: FYI scale
не предназначен для конверсии базы. От man bc
:
scale defines how some operations use digits after the decimal point.
The default value of scale is 0.