테스트문에 있어서는, [[ ]] 가 [ ] 보다는 더 적당할 수도 있습니다. 비슷하게, 산술 연산에 있어서도 (( ))를 쓰는것이 더 나을 수도 있습니다.
a=8 # 다음에 나오는 비교 연산은 모두 똑같습니다. test "$a" -lt 16 && echo "yes, $a < 16" # "and list" /bin/test "$a" -lt 16 && echo "yes, $a < 16" [ "$a" -lt 16 ] && echo "yes, $a < 16" [[ $a -lt 16 ]] && echo "yes, $a < 16" # [[ ]] 와 (( )) 안에 들어 있는 (( a < 16 )) && echo "yes, $a < 16" # 변수는 쿼우트해 줄 필요가 없습니다. city="New York" # 마찬가지로, 다음에 나오는 비교 연산도 모두 같은 겁니다. test "$city" \< Paris && echo "Paris가 $city 보다 더 커요." # 아스키 순서에서 더 커요. /bin/test "$city" \< Paris && echo "Paris가 $city 보다 더 커요." [ "$city" \< Paris ] && echo "Paris가 $city 보다 더 커요." [[ $city < Paris ]] && echo "Paris가 $city 보다 더 커요." # $city 를 쿼우트 안 해줘도 됩니다. # Thank you, S.C. |