shell中shell var=$[$var-1]与shell var=$var-1有什么区别?

在《linux命令行与shell脚本编程大全》一书中看到var=$[$var-1],不是很理解,还望各位帮忙解答,不甚感激!

$[]是shell中进行数值计算的一种写法。$var是引用var这个变量。假设如果var等于1,那么对于var=$[$var+1],var将会等于var变量的值加上1,即执行该语句后var的值变为2。而执行var=$var+1语句之后,var1是等于“1+1”这个字符串。

$后面带数字,代表传入的第几个参数;
如 $1 $2表示第一第二个参数;
$var是自己定义的参数;
比如 : shell 传入的值是1 2 3 4这四个参数(shell参数是以空格隔开
var=4
var=$[$var-1]
这时候的var就是第三个参数值3;

希望能够帮到你....

图片说明
传参懂一点点,但记得接收参数不是应该用${1}或着$1,这里用了中括号,和书中表达也不太吻合!