Kozip의 새로운 포크를 만들었습니다

몇 년 전 이 글에([url:3blvtc9o]http://ubuntu.or.kr/viewtopic.php?f=18&t=7861[/url:3blvtc9o]), 윈도우에서 한글 파일명을 포함하여 만든 zip파일을 리눅스에서 풀면 깨지는 문제의 해결책으로 kozip이라는 스크립트가 올라왔었습니다. 그 중 파이썬 버전도 있었는데요, 첫 프로그래밍 언어로 파이썬을 배우면서, 이 스크립트에 기능도 추가하고, 파이썬 3로 업데이트 하려고 합니다. 그래서 새로운 github 저장소를 만들었습니다. [url:3blvtc9o]https://github.com/hojunester/kozip[/url:3blvtc9o]

기능

  • 원래 스크립트와 마찬가지로, 한글 파일명이 들어 있는 zip 파일을 인코딩 문제 없이 잘 풉니다.(…)
  • 압축을 풀 폴더를 지정해주지 않아도, 알아서 그 zip파일명과 같은 폴더를 만들고 그 안에다가 압축을 풉니다(예를 들어 ‘kozip.py ~/Documents/test.zip’ 이렇게 실행하시면 ~/Documents/test 폴더를 생성한 다음에 그 폴더에 압출을 풉니다.)
  • euc-kr, shift-jis 라는 플래글 통해서 일본어 zip 파일들도 인코딩 문제 없이 풀 수 있습니다.

아직 코딩 생초보인지라 미숙한 점이 많을 텐데 많이 지적해주세요! 그리고 파이썬 3로 옮기는 데에 도움 좀 부탁드립니다 ㅠㅠ

좋은 스크립트네요
한때 몰라서 불편했었는데 2011년 1월에 -O 패치가 들어가면서 인코딩 문제는 없는 것으로 알고 있습니다

unzip (6.0-4ubuntu1) natty; urgency=low

  • Added patch from archlinux which adds the -O option allowing a charset
    to be specified for the proper unzipping of non-latin and non-unicode
    filenames. (LP: #580961)

– Brian Thomason <brian.thomason@canonical.com> Wed, 12 Jan 2011 20:08:14 -0500

unzip (6.0-9ubuntu1) saucy; urgency=low

  • Resynchronise with Debian. Remaining changes:
    • Add patch from archlinux which adds the -O option, allowing a charset
      to be specified for the proper unzipping of non-Latin and non-Unicode
      filenames.

– Colin Watson <cjwatson@ubuntu.com> Mon, 13 May 2013 13:00:12 +0100

kozip 링크에 올려놓은 테스트 파일로 풀어 봤습니다
$ unzip test_files.zip
Archive: test_files.zip
inflating: ┼╫╜║╞о2.txt
inflating: �׽�Ʈ.txt
inflating: ┼╫╜║╞о3.txt
oseb@book:~/Work$ unzip -O euckr test_files.zip
Archive: test_files.zip
inflating: 테스트2.txt
inflating: 테스트.txt
inflating: 테스트3.txt
oseb@book:~/Work$ unzip -O cp949 test_files.zip
Archive: test_files.zip
replace 테스트2.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
inflating: 테스트2.txt
inflating: 테스트.txt
inflating: 테스트3.txt

[quote="oseb":3mcc8ru8]좋은 스크립트네요
한때 몰라서 불편했었는데 2011년 1월에 -O 패치가 들어가면서 인코딩 문제는 없는 것으로 알고 있습니다

unzip (6.0-4ubuntu1) natty; urgency=low

  • Added patch from archlinux which adds the -O option allowing a charset
    to be specified for the proper unzipping of non-latin and non-unicode
    filenames. (LP: #580961)

– Brian Thomason <brian.thomason@canonical.com> Wed, 12 Jan 2011 20:08:14 -0500

unzip (6.0-9ubuntu1) saucy; urgency=low

  • Resynchronise with Debian. Remaining changes:
    • Add patch from archlinux which adds the -O option, allowing a charset
      to be specified for the proper unzipping of non-Latin and non-Unicode
      filenames.

– Colin Watson <cjwatson@ubuntu.com> Mon, 13 May 2013 13:00:12 +0100

[/quote:3mcc8ru8]
아, 우분투의 unzip에는 패치가 적용되어 있군요. 사실 아치를 쓰면서 개발한 스크립트라서 -O 옵션이 없다는 가정 하에 썼네요.
추후에는 스크립트에 QT로 된 GUI 프론트 엔드를 추가하려고 해요. JZip이 최신 JRE 상에서 돌아가질 않더군요;; 와인으로 반디집 돌리는 건 뭔가 마음에 안들어서요.
여하튼 테스트 감사합니다!

스크립트 만들어 주셔서 감사합니다.

데비안을 사용하는데 데비안용 unzip에는 옵션이 없더군요…

아무래도 사용을 하려면 우분투 패치파일을 적용하거나 해야 하는데 귀찮기 때문에
그냥 스크립트를 사용하고 있습니다…

약간의 건의사항은
파이썬을 배우셔서 관련이 없긴 하지만 괜찮으시면 unark로 egg파일이나 alz파일도
사용할 수 있게 만들어주시면 어떨까 싶습니다…

[url:3b53htwb]http://ubuntu.or.kr/viewtopic.php?p=114922#p114922[/url:3b53htwb]

저도 만들어 보려고 합니다만 사실상 대학원 때문에 시간이 없네요…

누군가 만들어 주신다면 이 xxx 같은 형식 때문에 윈도우 킬일이 없을 듯합니다…