file命令用来识别文件类型,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。
语法格式:file [参数] [文件]
常用参数:
-b | 列出辨识结果时,不显示文件名称 (简要模式) |
-c | 详细显示指令执行过程,便于排错或分析程序执行的情形 常与 -m 一起使用,用来在安装幻数文件之前调试它 |
-f | 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称 |
-L | 直接显示符号连接所指向的文件类别 |
-m | 指定魔法数字文件 |
-v | 显示版本信息 |
-z | 尝试去解读压缩文件的内容 |
-i | 显示MIME类别 |
参考实例:
显示文件类型:
[root@1024ask.com ~]# file install.log
install.log: UTF-8 Unicode text
显示文件类型,不显示文件名称:
[root@1024ask.com ~]# file -b install.log
UTF-8 Unicode text
显示文件类型, 显示MIME类别,不显示文件名称:
[root@1024ask.com ~]# file -b -i install.log
text/plain; charset=utf-8
显示符号链接的文件类型:
[root@1024ask.com ~]# ls -l /var/mail
lrwxrwxrwx 1 root root 10 08-13 00:11 /var/mail -> spool/mail
[root@1024ask.com ~]# file /var/mail
/var/mail: symbolic link to `spool/mail'
显示符号连接所指向的文件类别:
[root@1024ask.com ~]# file -L /var/mail
/var/mail: directory
与该功能相关的Linux命令:ltrace命令 – 跟踪进程调用库函数的情况source命令 – 在当前Shell环境中从指定文件读取和执行命令mysqladmin命令 – MySQL服务器客户端管理工具mysqldump命令 – MySQL数据库备份e2image命令 – 保存ext2/ext3文件元数据xlsfonts命令 – 显示X服务器字体列表pushd命令 – 添加目录到目录堆栈顶部more命令 – 显示文本文件内容lynx命令 – 终端上的纯文本浏览器auditctl命令 – 控制内核的审计系统