文章目录
- 介绍
- 语法格式
- 常用选项
- 参考示例
- (一)显示文件类型
- (二)显示符号链接的文件类型
介绍
file 命令用来识别文件类型,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。
注意:如果没有指定具体的路径,则是查找当前目录下的文件,否则会提示: cannot open 'filename' (No such file or directory)
语法格式
file [选项] <参数>
参数:要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。
常用选项
选项 | 说明 |
---|---|
-b | 列出辨识结果时,不显示文件名称 (简要模式) |
-c | 详细显示指令执行过程,便于排错或分析程序执行的情形,常与 -m 一起使用,用来在安装幻数文件之前调试它 |
-f | 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称 |
-L | 直接显示符号连接所指向的文件类别 |
-m | 指定魔法数字文件 |
-v | 显示版本信息 |
-z | 尝试去解读压缩文件的内容 |
-i | 显示MIME类别 |
参考示例
(一)显示文件类型
[root@localhost ~]# file install.log
install.log: UTF-8 Unicode text[root@localhost ~]# file -b install.log <== 显示类型但不显示文件名称
UTF-8 Unicode text[root@localhost ~]# file -i install.log <== 显示MIME类别
install.log: text/plain; charset=utf-8[root@localhost ~]# file -b -i install.log # 显示文件类型, 显示MIME类别,不显示文件名称
text/plain; charset=utf-8
(二)显示符号链接的文件类型
[root@localhost ~]# ls -l /var/mail
lrwxrwxrwx 1 root root 10 08-13 00:11 /var/mail -> spool/mail[root@localhost ~]# file /var/mail
/var/mail: symbolic link to `spool/mail'[root@localhost ~]# file -L /var/mail <== 显示符号连接所指向的文件类别
/var/mail: directory[root@localhost ~]# file /var/spool/mail
/var/spool/mail: directory[root@localhost ~]# file -L /var/spool/mail
/var/spool/mail: directory