Bash의 일반 변수 대입은 문자열 저장입니다. 정수 계산은 산술 확장 $((...)) 등으로 명시합니다.
Bash 터미널에서 bash example.sh로 실행합니다. Windows의 cmd/PowerShell 구문과 다릅니다. 파일은 UTF-8, LF 줄바꿈으로 저장하세요.
#!/usr/bin/env bash
n=7
printf '%s
' "$((n + 2)) $((n - 2)) $((n * 2)) $((n / 2)) $((n % 2)) $((n ** 2))"
((n += 3))
printf '%s
' "$n" "$((2 + 3 * 4))" "$(((2 + 3) * 4))"9 5 14 3 1 49
10
14
20
Bash 산술은 고정 폭 정수이며 소수 계산용이 아닙니다. 7/2는 3입니다. n=7에는 공백을 넣지 않습니다. ((식)) 명령의 종료 상태는 식의 값이 0이면 1이므로 set -e와 n++ 조합에 주의하세요. 외부 문자열을 검증 없이 산술식으로 평가하지 마세요.
| 종류 | 문법 |
|---|---|
| 산술 | + - * / % ** |
| 대입 | = += -= *= /= %= |
| 증감 | ++ -- |
| 값 얻기 | $((식)) |
음수 나머지를 확인하세요. 08 같은 입력은 진법 해석 문제가 있으므로 숫자 검증 후 10# 접두사를 적용하는 경우를 조사하세요.