file命令 – 识别文件类型

file命令的功能是用于识别文件的类型,也可以用来辨别一些内容的编码格式。由于Linux系统并不是像Windows系统那样通过扩展名来定义文件类型,因此用户无法直接通过文件名来进行分辨。file命令则是为了解决此问题,通过分析文件头部信息中的标识来显示文件类型,使用很方便。

语法格式:file [参数] 文件

常用参数:

-b列出辨识结果时,不显示文件名称 (简要模式)
-c详细显示指令执行过程
-f指定名称文件,显示多个文件类型信息
-L直接显示符号连接所指向的文件类别
-m指定魔法数字文件
-v显示版本信息
-z尝试去解读压缩文件的内容
-i显示MIME类别

参考实例:

查看某些文件的类型:

[[email protected] ~]# file anaconda-ks.cfg  
anaconda-ks.cfg: ASCII text [[email protected] ~]# file /dev/sda 
/dev/sda: block special (8/0) 

[[email protected] ~]# file Documents 
Documents: directory 

[[email protected] ~]# file /bin/ls 
/bin/ls: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=937708964f0f7e3673465d7749d6cf6a2601dea2, stripped, too many notes (256)

查看某个文件的类型,但不显示文件名:

[[email protected] ~]# file -b anaconda-ks.cfg  
ASCII text

以MIME类别来显示某个文件的类型:

[[email protected] ~]# file -i anaconda-ks.cfg  
anaconda-ks.cfg: text/plain; charset=us-ascii 

查看某个符号链接文件(快捷方式)的类型,会提示目标文件名称:

[[email protected] ~]# file /dev/cdrom 
/dev/cdrom: symbolic link to sr0 

直接查看某个符号链接文件(快捷方式)所对应的目标文件的文件类型:

[[email protected] ~]# file -L /dev/cdrom 
/dev/cdrom: block special (11/0) 
厂家CPU内存硬盘流量价格购买链接
Vultr11GB25GB-SSD1000GB/mUSD $5/m购买
腾讯云Qcloud22GB50GB-SSD购买
RamNode11GB25GB-SSD500GB/mUSD $5购买
Linode11GB25GB-SSD1000GB/mUSD $5购买
DigitalOcean11GB25GB-SSD1000GB/mUSD $5/m购买

已发布

分类

作者:

标签

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注