serfle

LF, CR, CRLF 줄바꿈 문자의 차이점

질문
수정26일 전
조회수34
0

LF(Unix), CR(macOS), CRLF(Windows)의 개행 문자 간의 차이점을 알고 싶습니다.
가능하다면 예시와 함께 알려주세요.

|
asked by래비

    답변 1

    • 0

      줄바꿈 문자(EOL: End of Line)는 텍스트에서 한 줄의 끝과 다음 줄의 시작을 표시하는 특수 문자입니다. 운영체제마다 서로 다른 방식을 사용하며, 이는 텍스트 파일 호환성에 영향을 미칩니다.

      종류표기ASCII주 사용 운영체제설명
      LF\n10Unix/Linux/macOS(OS X 이후)Line Feed(줄 바꿈)
      CR\r13구형 Mac OS(9 이전)Carriage Return(캐리지 리턴)
      CRLF\r\n13+10Windows/DOSCR과 LF의 조합

      이러한 차이는 역사적으로 텔레타이프 시대에서 비롯되었는데, CR은 캐리지(인쇄 헤드)를 줄의 시작으로 되돌리고, LF는 종이를 한 줄 올리는 별도의 물리적 작업이었으며, 각 운영체제가 이 개념을 다르게 채택했기 때문입니다.

      상세 설명

      LF (Line Feed, \n)

      • Unix, Linux, 현대 macOS 시스템 표준
      • 커서를 다음 줄 시작으로 이동
      • 예) "Hello\nWorld" -> 두 줄로 표시

      CR (Carriage Return, \r)

      • 구형 Mac OS(9 이전) 표준
      • 커서를 현재 줄 처음으로 이동
      • 예) "Hello\rWorld" -> 커서가 줄의 처음으로 돌아가서 "Hello"를 "World"로 덮어씀

      CRLF (Carriage Return + Line Feed, \r\n)

      • Windows, DOS 시스템 표준
      • CR과 LF 조합으로 다음 줄 시작으로 이동
      • 예) "Hello\r\nWorld" -> 커서를 줄의 시작으로 이동한 후 다음줄로 넘김

      예시

      같은 내용의 텍스트 파일이라도 운영체제에 따라 다르게 저장됩니다.

      Hello World
      Nice to meet you
      
      • Unix/Linux 파일: Hello World\nNice to meet you\n
      • Windows 파일: Hello World\r\nNice to meet you\r\n
      • 구형 Mac 파일: Hello World\rNice to meet you\r

      이러한 차이점은 텍스트 파일을 다른 운영체제 간에 전송할 때 호환성 문제를 일으킬 수 있어서, 현대 텍스트 에디터들은 대부분 이 차이를 자동으로 처리해줍니다.

      링크

      https://developer.mozilla.org/ko/docs/Glossary/CRLF

      ||
      answered by래비