Erro Bash “erro de sintaxe: operando esperado”, mas operando existente

Erro Bash “erro de sintaxe: operando esperado”, mas operando existente

Existe uma operação de subtração que resulta em erro, porém parece que existem dois operandos fornecidos:

PREV="$(intranet -r)"
PREV=${PREV/Revision: /}      ## results in "11072"
REV="$(intranet -r)"
REV=${REV/Revision: /}     ## results in "11072"
RDIFF=$(( ${REV} - ${PREV} ))        ## throws error

/usr/local/bin/updateAll: linha 36: 11072 - 11072: erro de sintaxe: operando esperado (token de erro é "11072 - 11072")

Tentei colocar REV/PREV em "colchetes"e sem"$" sem sucesso.

EDITAR: O resultado real de

intranet -r | sed -nl

é

\033[96mRevisão: 11072$

\033[0m$

(Porque a saída é formatada em cores)

Responder1

O problema era a formatação de cores. Eu adicionei um segundo caso "intranet -R" ("R" maiúsculo) sem formatação de cores - funciona perfeitamente.

informação relacionada