문제
다음 명령의 결과로 알맞은 것은?
① user ② $user ③ lin ④ ihduser
정답
3번
해설
정답: 3. "user=lin" 으로 셸 변수 user 에 문자열 "lin" 을 저장했고, "echo $user" 는 변수 user 의 값을 치환해 출력하므로 결과는 lin 이다.
오답 풀이
- 1번: user 는 변수 이름이고 출력되는 것은 그 값(lin)이지 "user" 가 아니다.
- 2번: "$user" 는 변수 참조 표기 그대로가 아니라 그 값으로 치환되어 출력된다.
- 3번: 변수 user 의 값 lin 이 출력되므로 옳다.
- 4번: ihduser 는 프롬프트의 사용자명일 뿐 변수 user 에 저장한 값이 아니다.
보충 개념 변수 대입은 "이름=값"(등호 양옆 공백 없음)으로 하고, 값을 쓸 때는 $이름 또는 ${이름} 으로 치환한다. 작은따옴표 안의 $ 는 치환되지 않고, 큰따옴표 안에서는 치환된다.