맥에서 압축 풀면 파일 이름이 깨지는 이유와 해결법

회사에서 받은 ZIP을 풀었더니 파일명이 전부 외계어 — Windows에서 온 압축파일이라면 거의 예외 없이 겪는 문제입니다. 원인은 단순하고, 해결법도 있습니다.

원인: ZIP에는 파일명 인코딩 표준이 없다

ZIP 포맷은 유니코드 보급 이전에 설계됐고, Windows 압축 프로그램 대부분은 지금도 파일명을 EUC-KR(한국어 환경 기준)로 기록합니다. macOS 압축 유틸리티는 UTF-8 전제로 읽기 때문에 한글이 전부 오변환됩니다.

중요한 것은 파일 내용물은 멀쩡하다는 점입니다. 깨진 건 이름의 해석뿐이므로, 올바른 인코딩으로 다시 읽으면 복원할 수 있습니다.

해결① (권장): ZIP째 자동 복구

원본 ZIP을 Mojifix에 드롭하세요. 파일명 바이트를 분석해 인코딩을 자동 감지하고, 정상 이름의 복구본 ZIP을 생성합니다. 원본은 변경되지 않고, 복원 불가능한 글자는 추측 대신 명시적으로 표시됩니다.

해결②: 이미 풀었다면 파일 일괄 리네임

ZIP을 지웠다면 풀어놓은 파일·폴더를 그대로 드래그하세요. 같은 자동 감지가 실행되고, 복구 전→후 미리보기를 확인한 뒤 한 번에 리네임됩니다.

해결③: 커맨드라인 수동 지정

Homebrew unzip이라면 unzip -O euc-kr archive.zip처럼 인코딩을 지정해 다시 풀 수 있습니다. 다만 원본 인코딩을 직접 맞혀야 하고, 틀리면 다른 형태로 깨집니다. 시행착오를 피하려면 자동 감지가 확실합니다.