소프트웨어개발/Linux general

리눅스에서 한글로 된 파일명을 UTF8에서 EUC-KR로 변경하기

곽코딩 2014. 3. 13. 15:36
반응형

리눅스는 기본적으로 UTF8 기반입니다.

파일명도 UTF8 로 생성이 된다는 말이죠.


리눅스의 파일을 압축한 파일을 윈도우로 다운로드 받아서 압축을 풀 경우

파일명이 깨진다든가 하는 문제가 있는데요.


그래서 압축 전에 리눅스 파일명을 UTF8 에서 EUC-KR 로 변경해서 압축을 하면 문제가 없습니다.

이걸 제공하는 패키지가 convmv 인데요.


레드헷의 경우 yum install convmv

우분투의 경우 apt-get install convmv 해서 설치합니다.


콘솔에서는 convmv -f utf8 -t euc-kr –notest 파일명 하시면 되구요


jsp에서는 아래처럼 사용하면 됩니다.


String str[] = {“/usr/bin/convmv”, “-f”,”utf8″,”-t”,”euc-kr”,”–notest”, tFile};

proc = Runtime.getRuntime().exec(str);

proc.waitFor();


int rc = proc.exitValue();

//System.out.println(“return code: “+ rc);


if(rc!=0) {

    InputStream errStream = proc.getErrorStream();

    DataInputStream errDataStream = new DataInputStream(errStream);

    String s;

    s = errDataStream.readLine();

    while(s !=null) {

System.out.println(s);

s = errDataStream.readLine();

    }

}