トップ 一覧 検索 ヘルプ RSS ログイン

tips-unzipの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!! Windows で作成したzip ファイルを解凍すると日本語ファイルが文字化け
!! unzip 6.0 
SRC
 http://www.info-zip.org/
 http://sourceforge.net/projects/infozip/files/UnZip%206.x%20%28latest%29/
Patch
 https://bugs.archlinux.org/task/15256
Work
 patch -u -p1  < unzip60-alt-iconv-utf8.patch

! 日本語パッチ
 # wget 'http://sourceforge.jp/frs/g_redir.php?m=jaist&f=%2Finfozip%2FUnZip+6.x+%28latest%29%2FUnZip+6.0%2Funzip60.tar.gz' -O unzip60.tar.gz
 # tar zxvf unzip60.tar.gz
 # cd unzip60
 # wget http://gist.github.com/raw/573753/unzip-6.0-japanese_charset.patch
 # patch -p1 < unzip-6.0-japanese_charset.patch
 # make -f unix/Makefile LOCAL_UNZIP="-D_FILE_OFFSET_BITS=64 -DNO_LCHMOD -D_MBCS -DNO_WORKING_ISPRINT" generic_gcc
 # make -f unix/Makefile LOCAL_UNZIP="-D_FILE_OFFSET_BITS=64 -DNO_LCHMOD -D_MBCS -DNO_WORKING_ISPRINT" install
 # which unzip

!! unzip-5.5 は以下
SRC

http://www.info-zip.org/

日本語パッチ
http://ebuild.gentoo.gr.jp/view.php?cat=app-arch&app=unzip&visible=

日本語のパスワードがかかったzipを展開
普通に ASCII キャラクタのパスワードがかけられた ZIP を展開するなら

 unzip file.zip
 ... password: [ここでパスワードを入れる]

を実行して普通にパスワードを入れればいい。でも、日本語(Shift-JIS)のパスワードがかかった ZIPファイルを展開するにはどうしたらいいだろうか。このためには、まず、端末で日本語を入力できるようにしておかなければならない。kinput2 や ATOK などお好みのものを使えばよい。そうした上で

 unzip -P`nkf -s` file.zip
 [ここでパスワードを入力]
 Ctrl-d (コントロールキーを押したまま d を押す)

とすると、パスワードが正しければ展開されるはずだ。

上で端末で入力する方法を書いたけどエディタでパスワードを書いたファイルをつくって、それを Shift-JIS で保存しておいても同じようにできる。そのファイルをpasswd.txtとしよう。

unzip -P`cat passwd.txt` file.zip

で大丈夫のはず。