태섭씨 블로그
유닉스(리눅스), 도스(윈도우)의 줄바꿈 본문
각 OS 별로 줄바꿈에 대한 정의가 서로 다른데 (역사적인(?) 이유로 다르다. 자세한 내용은 위키 https://en.wikipedia.org/wiki/Newline 를 참고하자.)
간략히 보면 아래 표와 같다.
유닉스(리눅스, Mac OS X) | \n | LF(Line Feed) or NL(New Line)으로 표기. |
도스(윈도우) | \r\n | CRLF , CR+LF (Carriage Return + Line Feed) 로 표기 |
Mac OS (~9) | \r | CR |
도스 -> 유닉스로 전환하기 위해서는 아래와 같이 입력하면 된다.
tr -d '\r' < inputfile > outputfile # tr 명령어를 이용 '\r' 을 삭제한다 |
tr 외에 sed, awk, perl, python 등등 정규식을 사용하여 간편하게 처리가 가능한 것들은 어떤 프로그램이던지 가능하다.
(사실 맥에서 sed 로 해보려고 했는데, escape char를 잘 안먹더라 ;;)
유니코드 표준에서는 위의 값들 이외에 추가로 더 많은 값들을 정의하고 있으니 참고하자.
- LF : Line Feed, U+000A
- VT : Vertical Tab , U+000B
- FF : Form Feed , U+000C
- CR : Carriage Return, U+000D
- CR+LF : CR (U+000D) followed by LF (U+000A)
- NEL: Next Line, U+0085
- LS: Line Separator, U+2028
- PS: Paragraph Separator, U+2029
(NEL 부터는 ASCII CODE 범위를 벗어난다.)
참고 :
https://en.wikipedia.org/wiki/Newline
http://www.asciitable.com/
Comments