a[(x)]
is the same as a[x]
. Prefer not wrapping in additional
parentheses.Similarly $(( (x) ))
is the same as
$(( x ))
, (( (x) ))
is the same as
(( x ))
.
array[(x+1)]=val
echo $(( (x+1) ))
array[x+1]=val
echo $((x+1))
ShellCheck found an entire arithmetic expression wrapped in
parentheses. This does not serve a purpose since the expression is
already clearly delimited by the construct it's in, such as
array[..]=
or $((..))
in the example.
Note: ShellCheck does not warn about redundant parentheses
in subexpressions, such as (a*b)+c
. Feel free to use
parentheses to clarify the order of operations any way you'd like.
ShellCheck only emits this suggestion when the entire
expression is wrapped twice.
If you prefer having an extra layer of parentheses for stylistic reasons, you can ignore this message.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.