Cygwin은 1byte 문자권을 대상으로 출시되기 때문에 한글 출력은
기본적으로 지원하지 않는다.
한글 입/출력 문제는 bash 설정 파일을 변경해서 적용할 수 있는데,
시스템 규모 단위로 설정할 것인지 아니면 사용자별 설정을 할 것인지
결정해야 한다.
일반적으로는 계정에 상관없이 시스템 설정을 수정하므로 시스템 설정을
변경하도록 한다.
이 장에서는 다음 과정을 통해 Cygwin bash 콘솔 상에서 한글을 쓰고,
읽을 수 있도록 설정할 수 있다.
1. /etc/profile 수정
/etc 디렉토리를 보면 profile 파일이 존재하는데 이 파일을 열고
다음 내용을 추가한다.
# Created by madox, 2013-01-07 오후 7:49:19 (Start)
# Bash 한글 적용 script 추가
if [ -f /etc/bash.bashrc ] ; then
source /etc/bash.bashrc
fi
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
INPUTRC=/etc/inputrc
fi
# Created by gpande, 2013-01-07 오후 7:49:30 (End)
2. /etc/inputrc 작성 및 수정
기본값으로 inputrc 파일이 존재하지 않는데 /etc 디렉토리에 새로 만들고,
다음 내용을 추가한다.
# 터미널 자체의 8비트 문자 지원여부와 상관없이 8비트 입력을 가능하게 함.
set meta-flag on
# 8비트 문자를 변환하지 않도록 함.
set convert-meta off
# 8비트 문자를 출력할 때 그대로 출력하도록 함.
set output-meta on
# 자동 완성 기능을 사용할때 대소문자를 구별하지 않음.
set completion-ignore-case on
# 콘솔에서 나는 비프음(beep)이 나지 않게 함.
set bell-style visible
set horizontal-scroll-mode on #
set show-all-if-ambiguous on #
3. /etc/bash.bashrc 수정
Cygwin에서는 여느 Linux 배포판과 달리 bashrc가 아니고
bash.bashrc인데 이 파일을 열어 다음 내용을 추가한다.
# Created by gpande, 2013-01-07 오후 7:54:29 (Start)
# 아래 설명 참조
alias ls='ls -F --color=auto --show-control-char'
# 숨김 파일을 표시함.
alias l.='ls -dl .[a-zA-Z]*'
# 숨김 파일을 비롯해서 모든 파일 및 디렉토리를 자세하게 표시함.
alias ll='ls -al'
# 만약 복사대상 파일 이미 있는 경우 사용자에게 이를 알림.
alias cp='cp -i'
# 대상 파일이 이미 있어, 사용자에게 어떻게 처리할지를 물어봄.
alias mv='mv -i'
# 각 파일을 하나씩 지울 것인지 사용자에게 일일이 물어봄.
alias rm='rm -i'
# Created by gpande, 2013-01-07 오후 7:54:37 (End)
첫줄 alias ls='ls -F --color=auto --show-control-char'에 대해
간단히 설명하자면...
-F는 파일 형식을 알리는 문자를 각 파일 뒤에 추가하는 것으로,
실행파일은 "*", 경로(디렉토리)는 "/", 심볼릭 링크는 "@", FIFO는 "|",
소켓은 "=", 을 표시해 준다.
--color=auto는 파일의 형태에 따라 그 파일의 색깔을 다르게 보여주는 기능이고,
--show-control-char는 한글을 제대로 출력해 주는 기능이다.
실제 'ls -F --color=auto --show-control-char' 라고 입력해야 할 것을
그냥 'ls'라고만 입력해도 시스템 내부적으로는 동일한 결과가 발생하기 때문에
매우 자주 사용된다.
현재 시스템에 적용된 alias 정보를 확인하기 위해서는 콘솔창에서
'alias'라고만 입력하면 된다.
4. 퍼미션 수정
파일 편집을 모두 마쳤다면 마지막으로 다른 사용자들도 파일을 읽을 수 있도록
/etc 디렉토리로 이동하여 다음 명령어를 입력하여 퍼미션을 수정해 준다.
chmod 644 profile bash.bashrc inputrc
이제 모두 끝났다. 모든 사용자들이 완벽하지는 않지만 별 무리없이
한글을 사용할 수 있을 것이다. 또한 기본 alias 설정도 이용할 수 있다.
댓글 없음:
댓글 쓰기