개행문자 변환기

CRLF, LF 등 개행문자를 변환합니다. Windows, Unix/Linux/Mac, Old Mac 형식 간 변환을 지원합니다.

현재 형식: -
줄 수: 0
입력

참고: 브라우저 특성상 붙여넣기는 자동으로 LF로 변환됩니다. CRLF/CR 테스트는 파일 불러오기 또는 아래 샘플 버튼을 이용하세요.

테스트 샘플:
변환:
출력

개행문자 변환기 안내

개행문자란?

개행문자(Line Ending)는 텍스트 파일에서 한 줄의 끝을 표시하는 보이지 않는 특수 문자입니다. 문제는 운영체제마다 서로 다른 개행문자를 사용한다는 점입니다. Windows는 CRLF(\r\n), Unix/Linux/macOS는 LF(\n), 클래식 Mac OS는 CR(\r)을 사용합니다. 이 차이 때문에 서로 다른 OS에서 만든 파일을 열거나 공유할 때 글자 깨짐, 스크립트 오류 등 여러 문제가 생길 수 있습니다.

시작하기

  1. 입력창에 변환할 텍스트를 붙여넣거나 직접 입력합니다. 파일을 드래그하여 업로드할 수도 있습니다.
  2. '형식 감지' 버튼을 눌러 현재 사용 중인 개행문자 형식을 확인합니다.
  3. 변환 대상 형식 버튼(LF, CRLF, CR) 중 하나를 클릭합니다.
  4. 변환된 결과를 '복사' 버튼으로 클립보드에 복사하거나 파일로 다운로드합니다.

기능 소개

  • 현재 텍스트의 개행문자 형식 자동 감지(LF, CRLF, CR, Mixed)
  • LF, CRLF, CR 간 원클릭 변환
  • 각 형식별 개행문자 개수 통계 표시
  • 변환 결과 복사 및 다운로드 지원
  • 파일 업로드를 통한 텍스트 불러오기
  • 실시간 변환 결과 미리보기

주의할 점

  • 현대 프로젝트에서는 LF를 표준으로 사용하는 것이 일반적입니다. Git도 LF를 기본으로 선호합니다.
  • Visual Studio Code, IntelliJ 등 대부분의 에디터에서 개행문자를 설정할 수 있지만, 기존 파일은 수동으로 변환해야 합니다.
  • 바이너리 파일(이미지, 실행 파일 등)은 개행문자 변환 대상이 아닙니다. 텍스트 파일에만 적용하세요.
  • .gitattributes에서 * text=auto를 설정하면 Git이 커밋 시 자동으로 LF로 변환합니다.
  • Dockerfile, Makefile 등은 반드시 LF를 사용해야 합니다. CRLF를 사용하면 빌드 오류가 발생할 수 있습니다.

활용 팁

  • Windows에서 작성한 셸 스크립트(.sh)를 Linux 서버에 배포하기 전 LF로 변환
  • Git 협업 시 개행문자 불일치로 인한 불필요한 diff 변경사항 해결
  • .gitattributes 설정 전에 기존 파일의 개행문자를 통일
  • CSV나 설정 파일을 다른 OS 환경으로 옮길 때 호환성 확보
  • CI/CD 파이프라인에서 스크립트 실행 오류 디버깅

자주 하는 질문

Q: 왜 개행문자를 변환해야 하나요?

Windows에서 작성한 파일을 Linux 서버에 올리거나 Git으로 협업할 때, 개행문자 불일치로 셸 스크립트가 실행되지 않거나 diff에서 모든 줄이 변경된 것으로 표시되는 문제가 생깁니다. 개행문자를 통일하면 이런 문제를 방지할 수 있습니다.

Q: Mixed 형식은 무엇인가요?

하나의 파일에 LF, CRLF, CR이 섞여 있는 상태입니다. 서로 다른 OS에서 같은 파일을 편집하면 자주 발생합니다. 코드 품질과 일관성을 위해 하나의 형식으로 통일하는 것이 좋습니다.

Q: LF, CRLF, CR 중 어떤 것을 써야 하나요?

대부분의 경우 LF를 권장합니다. Git, Docker, 대부분의 CI 도구가 LF를 기본으로 사용합니다. Windows 전용 레거시 프로젝트가 아니라면 LF를 선택하세요.

Q: Git에서 개행문자 문제를 방지하려면?

프로젝트 루트에 .gitattributes 파일을 만들고 * text=auto를 추가하세요. 그러면 Git이 커밋할 때 자동으로 LF로 변환하고, 체크아웃 시에는 OS에 맞는 형식으로 복원합니다.

Q: Windows에서 LF 파일을 편집하면 CRLF로 바뀌나요?

에디터 설정에 따라 다릅니다. VS Code나 대부분의 현대 에디터는 파일의 기존 개행문자를 유지합니다. 에디터 하단 상태바에서 현재 개행문자 형식을 확인하고 변경할 수 있습니다.

Q: 개행문자 변환으로 파일 내용이 바뀌나요?

눈에 보이는 텍스트 내용은 동일합니다. 바뀌는 것은 줄 끝의 보이지 않는 제어 문자뿐입니다. 하지만 바이트 단위에서는 파일 크기가 미세하게 달라질 수 있습니다(CRLF는 LF보다 줄당 1바이트 큼).

Q: 셸 스크립트가 실행되지 않을 때 개행문자가 원인일 수 있나요?

네, 매우 흔한 원인입니다. Linux에서 CRLF 개행문자가 포함된 스크립트를 실행하면 "bad interpreter" 또는 "\r: command not found" 같은 오류가 발생합니다. LF로 변환하면 해결됩니다.

Q: 서버에 텍스트가 전송되나요?

아닙니다. 모든 개행문자 감지와 변환은 브라우저에서 처리됩니다. 입력한 텍스트는 외부로 전송되지 않으므로 코드나 설정 파일도 안심하고 변환할 수 있습니다.