linux/Desktop

우분투 10.04 한글 압축 풀기

alignG 2010. 6. 18. 11:44
우붙투 10.04는 -O cp949옵션이 안먹히네요~ 9.04까지만해도 고녀석하나면 잘 풀렷었는데~
그래서 검색하다 펄스크립트하나 발견해서 적어봅니다 ^^




BitsyXB development system by Synthesis Studios 저작자 표시동일조건 변경허락



$ mkdir ~/bin
-> 먼저 스크립트가 위치할 디렉토리를 만듭니다.

$ echo "PATH=\$PATH:/home/namsa/bin" >> ~/.bashrc
-> 어디서나 실행할려면 PATH변수에 bin폴더가 들어 있어야 겟죠~ "/home/namsa/bin"은 자신의 홈디렉토리에 맞추어서 재지정해주시면 됩니다.
$ . ~/.bashrc
-> . 명령어로 bashrc의 설정을 현재쉘에 적용시켜 줍니다. 아니면 쉘을 닫앗다 여는건데 이게 편하겟죠 ^^
$ sudo apt-get install libarchive-zip-perl
-> perl스크립트에서 Archive::Zip 모듈을 사용하는데요 그 모듈이 우분투에는 기본적으로 없어서 깔아주어야 합니다.

$ vi ~/bin/kozip
-> vi파일로 kozip을 만들어서 아래의 스크립트를 붙혀 넣습니다.

스크립트

#!/usr/bin/perl
use strict;
use Encode;
use Archive::Zip;
my $zip = Archive::Zip->new();
$zip->read($ARGV[0]) == 0 or
   die "$0: couldn't read $ARGV[0]\n";
foreach my $mref ($zip->members) {
    my $n = decode("cp949",$mref->fileName);
    print "Extracting $n\n";
    $zip->extractMember($mref,$n) == 0 or
   die "$0: couldn't extract $n\n";
}


$ chmod 755 ~/bin/kozip
-> 실행권한을 주어야 겟죠 ^^

$ kozip 파일명.zip
-> 어디서나 요러면 압축이 풀리게 되는거죠 ^^

오랜만에 펄 스크립트를 보니 오랜만에 펄이 다루고 싶어지네요. 한참 프로잭트한다고 펄이랑 php랑 연동하고 머리아파햇는데  ^^ 저에게 펄이 꾀나 매력적인 언어네요
스크립트 출처 : http://ubuntu.or.kr/viewtopic.php?f=18&t=7861
반응형