숫자를 나타내는 문자열 값 변경

숫자를 나타내는 문자열 값 변경

다음과 같은 표현이 있습니다.

a="2013"

a의 값을 어떻게 변경할 수 있습니까 "2012"?

답변1

쉘 연산은 간단합니다 $(()).

a=$(($a-1))

답변2

Joseph R.이 제안한 표준을 사용 $(())하거나 일부 쉘( ksh, bash, zsh)의 경우 다음을 사용할 수 있습니다 let.

$ a="2013"
$ let a--; ## Or let "a=$a-1"
$ echo "$a"
2012

답변3

산술 확장을 사용하는 깔끔한 방법은 다음과 같습니다.

a=$((a-1))

아니면 단순히

((--a))

후자 구문은 POSIX에서 필수가 아니지만 최소한 ksh및 에서는 지원 됩니다 bash.

관련 정보