Rubyでファイルタイプを判定する
入力ファイルが圧縮されているなら解凍して、planeテキストなら何もしないという処理をしたい。
File#ftype では詳細な判定には使えない。
2.3.1 :061 > File.ftype('foo.gz')
=> "file"
https://github.com/blackwinter/ruby-filemagic
インストール
ruby bindingなので事前にOSにあったライブラリをインストール必要がある。
Debian/Ubuntu:: +libmagic-dev+
Fedora/SuSE:: +file-devel+
Gentoo:: +sys-libs/libmagic+
OS X:: <tt>brew install libmagic</tt>
$ gem install ruby-filemagic
2.3.1 :063 > FileMagic.new.file('foo.gz', true)
=> "gzip"
http://stackoverflow.com/questions/51572/determine-file-type-in-ruby
-
category:
- ruby