关于linux的shell编程,$后为啥要是双层圆括号

关于linux的shell编程,$后为何要是双层圆括号
关于linux的shell编程,有以下语句,想问下,为何当想取得$后面的括号里的运行结果,要使用双层圆括号,谢谢!
declare -i date_h=$(($(( $date_s_total-$date_d*24*60*60))/60/60))

------解决方案--------------------
BASH中算术表达式的语法

也可以用 expr 来替换
------解决方案--------------------
引用:

#1 
$(($date_s_total-$date_d*24*60*60))

#2
$(expr $date_s_total - $date_d \* 24 \* 60 \* 60)


#1 是BASH 语法,并不通用


修正一下