텍스트 파일

Mandu (토론 | 기여)님의 2016년 6월 5일 (일) 15:39 판 (→‎^M 부호)

텍스트 파일은 제어 문자를 제외한, 단순히 출력 가능한 문자열로 이루어진 파일을 말한다.

설명

이진 파일과 구별되며, 줄 단위의 기록을 위한 개행·파일끝 부호를 가지고 있다. 개행 부호는 운영체제마다 다르게 기록된다. 유니코드가 확산됨에 따라서 많은 파일들이 이에 기반을 두고서 만들어지고 있다. 텍스트 파일의 가장 유명한 확장자는 «.txt»이지만, HTML이나 CSV, 프로그램의 소스 파일도 텍스트 파일로 기록된다.

텍스트 파일에 대한 편집기를 텍스트 편집기라고 불르는데, Vi, 메모장, LeafPad 등이 모두 여기에 속한다.

줄바꿈 형식

줄바꿈 형식은 운영체제마다 달리 적용하며, 사용하는 부호가 다르다.

  • LF(0x0A): *nix 계열, BeOS…
  • CRF(0x0D): 맥 계열, 애플 계열…
  • CR+LF(0x0D 0x0A): MS 계열, OS/2…

^M 부호

간혹 편집기로 텍스트파일을 열었을 때, 끝부분에 저런 ^M 부호가 붙어있는 경우가 있다. 이는 MS 계열의 운영체제에서 만든 파일을 *nix 계열의 프로그램에서 읽어오는 과정에서, LF는 개행 부호로 처리하고, CR은 개행으로 판단하지 않았기 때문에 제어문자가 그대로 보이는 현상이다.

Vim에서 제거할 수 있다:

:%s/\r//g

참고로 필요하다면, 역시 Vim에서 만들어 넣을 수도 있다.

Ctrl-q + Ctrl-M

텍스트 편집에 관한 팁

개행 문자를 모두 제거

개행 문자를 모두 제거하여 한 줄로 만든다.

vim -c "%s/\n$//g" -c x 텍스트파일

인코딩 변환

텍스트편집기에서 저장한 형식과는 별개로 인코딩 변환이 필요할 경우가 있다.

iconv -f 들어오는문자열 -t 나가는문자열 원본파일 > 사본파일
vim -c "set fenc=나가는문자열" -c x 텍스트파일

iconv의 경우 윈도우창에서는 잘 안되는 면이 있으며, Vim은 읽고 쓰는 과정이 느릴 수 있다.