Bash 按位运算符
Bash bitwise operator
知道为什么下面的代码不起作用吗?
hex_var='a'
processed=((3 & $hex_var) | 8)
仍然不太了解 'Arithmetic Expansion'!
你的算术表达式是错误的。以下是您可以执行的操作:
hex_var=0xa
processed=$(( (3 & $hex_var) | 8 ))
echo $processed # yields 10
或者,按照 Gordon Davisson 的建议,您可以使用 #
符号来明确指定基数:
hex_var=a
processed=$(( (3 & 16#$hex_var) | 8 ))
参见:
知道为什么下面的代码不起作用吗?
hex_var='a'
processed=((3 & $hex_var) | 8)
仍然不太了解 'Arithmetic Expansion'!
你的算术表达式是错误的。以下是您可以执行的操作:
hex_var=0xa
processed=$(( (3 & $hex_var) | 8 ))
echo $processed # yields 10
或者,按照 Gordon Davisson 的建议,您可以使用 #
符号来明确指定基数:
hex_var=a
processed=$(( (3 & 16#$hex_var) | 8 ))
参见: