hello world

鉴别所有文件的文件类型

在我们日常实际的工作中,会遇到各种各样的文件扩展名,他们都是以产生他们的宿主程序打开,这样的文件类型成千上万,我们无法能获知所有的文件类型,那么,设想一下,我把一个压缩文件包改扩展名为doc,也就是改成Office 2003的扩展名,在Windows下我们双击该文件,肯定是通过Office应用程序来打开他,而不是winrar,打开之后肯定是乱码。那么,在一个文件无法打开或者确切的不知道他到底是什么文件或者由什么应用程序产生的,该如何做呢?

在Linux下,所有的文件和Windows的差异甚大,Linux下是不区分文件扩展名的,他们全部依靠文件的文件头来获知该文件是由什么程序产生,是什么类型的文件,file这个命令,能够洞察基本现有的所有文件的类型,Cygwin是将Linux命令移植到Windows下使用,当然具备file这个命令,在官网下载Cygwin,通过使用file命令,可以洞察出一切文件的类型,用法很简单,比如我想知道D:\123.rar这个文件到底是什么,参考以下(红色为标准命令):

Professor@boltkiller

$ cd D:

Professor@boltkiller /cygdrive/d

$ file 123.rar

123.rar: JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, baseline, precision 8, 271x300, frames 3

我们能很明白的看出,这个123.rar其实是一张jpeg图片,包括版本,和这个图片的尺寸等都一览无余。另外,如果这个文件是个word文档,我们一样能看出这个word文档是哪个版本的,比如Office2003,Office2007或者Office2010。。。

posted @ 2015-09-08 13:57  浩天四哥  阅读(416)  评论(0)    收藏  举报