file命令用来识别文件类型,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。
语法格式:file [参数] [文件]
常用参数:
-b | 列出辨识结果时,不显示文件名称 (简要模式) |
-c | 详细显示指令执行过程,便于排错或分析程序执行的情形 常与 -m 一起使用,用来在安装幻数文件之前调试它 |
-f | 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称 |
-L | 直接显示符号连接所指向的文件类别 |
-m | 指定魔法数字文件 |
-v | 显示版本信息 |
-z | 尝试去解读压缩文件的内容 |
-i | 显示MIME类别 |
参考实例:
显示文件类型:
[root@linuxvip ~]# file install.log
install.log: UTF-8 Unicode text
显示文件类型,不显示文件名称:
[root@linuxvip ~]# file -b install.log
UTF-8 Unicode text
显示文件类型, 显示MIME类别,不显示文件名称:
[root@linuxvip ~]# file -b -i install.log
text/plain; charset=utf-8
显示符号链接的文件类型:
[root@linuxvip ~]# ls -l /var/mail
lrwxrwxrwx 1 root root 10 08-13 00:11 /var/mail -> spool/mail
[root@linuxvip ~]# file /var/mail
/var/mail: symbolic link to `spool/mail'
显示符号连接所指向的文件类别:
[root@linuxvip ~]# file -L /var/mail
/var/mail: directory