[유닉스] 쉘 스크립트(Shell Script) 연산자


연산자

  • 연산자는 프로그램에서 자료를 다양하게 처리하는 방법을 제공
  • 배시 쉘은 산술 연산자, 비교 연산자, 논리 연산자, 비트 연산자 등 일반 프로그래밍 언어에서 제공하는 것과 유사한 연산자를 제공
  • 배시 쉘에서 수치 연산자 사용할 때는 let 내장 명령이나 (( ))를 사용
  • 비트 시프트 연산자는 here 문서의 «와 구분하기 위해 반드시 (( )) 사이에 기술하여야 함
  • (( )) 안에서는 저장 연산자(=) 좌우에 공백이 있어도 괜찮지만, let을 쓸 때 공백이 포함되면 “ ”로 묶어야 함
  • 위 표에서 위로 갈수록 우선순위가 높고, 아래로 갈수록 우선순위가 낮음

$ a=5
$ echo $a
5
$ let a = 20
-bash: let: =: syntax error: operand expected (error token is =)
$ let a = 20
$ echo $a
20
$ (( a = 30 ))
$ echo $a
30
$ a=$a*5
$ echo $a
30*5
$ echo $((5*6))
30
$ echo $(( ! 2+3*4 ))
12
$ echo $(( 2 << 1 ))
4
$ echo $(( 3^5 ))
6
$