我有以下表达式:
a="2013"
我怎样才能改变 的值a
到"2012"
.
答案1
简单地用于$(())
shell 算术:
a=$(($a-1))
答案2
您可以使用 Joseph R. 建议的标准$(())
,或者对于某些 shell ( ksh
、bash
、zsh
),您可以使用let
:
$ a="2013"
$ let a--; ## Or let "a=$a-1"
$ echo "$a"
2012
答案3
使用算术扩展的一种简洁方法是
a=$((a-1))
或者简单地
((--a))
请注意,后一种语法不是 POSIX 强制要求的,但至少受ksh
和支持bash
。