[FreeBSD-users-jp 96150] Re: zipアーカイブ中の日本語ファイル

IIJIMA Hiromitsu delmonta @ dennougedougakkai-ndd.org
2017年 11月 12日 (日) 05:22:39 UTC


いいじま@永遠の大学生です。

> Windowsで作ったzipアーカイブを添付ファイルで送られてくると、
> packageにあるunzipを使って解凍してますが、日本語のファイル名の
> ファイルは取り出すことはできても、ファイル名が復元できなくて、
> 困ることがあります。(ファイル名に重大な意味を込める人がいます。)

解凍後のフォルダでこんなスクリプトを走らせるのはいかがでしょう?
フォルダが日本語の名前になっている場合は、まずフォルダ名を変更
してから、その中にcdして再度走らせます。

#!/bin/csh -f
foreach f (*)
    set g=`echo -n "$f" | nkf -Sw`
    if ( "$f" ne "$g" ) then mv "$f" "$g"
end

#上記、cshの引用符の厳密なルールをきちんと理解していないので
#かなりテキトーに書いています。私ならPerlに逃げちゃいますが、
#丸山さんなら自力でシェルスクリプトを書けると思います。

========================================================================
(Mr.) IIJIMA Hiromitsu aka Delmonta <delmonta @ dennougedougakkai-ndd.org>
飯嶋 浩光 / でるもんた・いいじま ; (任同)電脳外道学会 代表取締役椅子人
------------------------------------------------------------------------
Web (Japanese): http://www.dennougedougakkai-ndd.org/
      Twitter: @delmonta_iijima, @kabu_agare, @program_diamond,
                @AyaC_KaltQ, #放送大学, #OUJ
  Yahoo! Japan: delmonta_iijima
========================================================================



freebsd-users-jp メーリングリストの案内