Unix 쉘에서 문서를 작성하다 보면 분명히
텍스트 파일인데, 데이타 파일로 인식되는 경우가 발생한다.
이 것은 작성하는 텍스트 문서에 Non-ASCII 문자
주1가 포함되는 경우에 발생하며, 한글을 사용하면
LANG 환경변수를 잘못 설정하는 경우에 주로 발생한다(다음 그림을 참조하기 바란다).
그림1 환경변수 설정에따른 file 명령의 변화
위의 그림에서 알 수 있듯이 test 파일을
file 명령으로 검사하면 처음에는
텍스트로 인식(79행)되지만
LANG 환경변수를
C로 변경(80행)한 후에는
데이타로 인식(81행)되는 것을 알 수 있다. 실제 이 파일의 내용을
more 명령으로 확인해보면 한글 파일임을 알 수 있다(82행).
그림2 vi 명령으로 test 파일을 불러온 경우
LANG 환경변수를
korean으로 변경(83행)한 후,
file 명령으로 다시 확인(84행)해보면 정상적으로
텍스트 파일로 인식되는 것을 알 수 있다.
따라서 Unix 계정 사용자는 자신의 쉘
주2 파일에 다음과 같은 행을 미리 삽입해 두는 것이 좋다.
setenv LANG korean
주1: 한글은 확장 그래픽 코드 2개로 표현된다. 따라서 모든 한글은 Non-ASCII 코드이다.
주2: 모든 명령은 C 쉘을 사용하다는 가정하에서 설명하였다.
댓글: 이 팁은 Anonymous님의 shell script file( ascii text ) --> data ?에대한 답으로 작성되었습니다.