Linux shell file 命令
Linux shell file命令用于辨识文件类型。
通过 file 命令我们得以辨识该文件的类型。
file 命令语法格式
file [-beLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]
参数
- -b
- 列出辨识结果时,不显示文件名称。
- -c
- 详细显示指令执行过程,便于排错或分析程序执行的情形。
- -f<名称文件>
- 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
- -L
- 直接显示符号连接所指向的文件的类别。
- -m<魔法数字文件>
- 指定魔法数字文件。
- -v
- 显示版本信息。
- -z
- 尝试去解读压缩文件的内容。
[文件或目录...] : 要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。
范例
显示文件类型
[root@localhost ~]# file demo.txt demo.txt: UTF-8 Unicode text [root@localhost ~]# file -b demo.txt # 不显示文件名称 UTF-8 Unicode text [root@localhost ~]# file -i demo.txt # 显示MIME类别。 demo.txt: text/plain; charset=utf-8 [root@localhost ~]# file -b -i demo.txt text/plain; charset=utf-8
显示符号链接的文件类型
[root@localhost ~]# ls -l /var/mail lrwxrwxrwx. 1 root root 10 Sep 20 17: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