在 Linux 中,文件不存在扩展名,判断文件类型不能像 Windows 那样通过扩展名查看文件类型,可以利用“ls -l”命令查看文件类型,也可以使用 file 命令查看文件的类型。
file [-beLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]
-b 列出辨识结果时,不显示文件名称。
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-C 检查指定的 magic 文件(默认为 /etc/magic 文件)有无格式错误。次验证一般不进行,在此参数下文件输入不执行
-f<名称文件> 指定名称文件,其内容有一个或多个文件名称呢感,让file依序辨识这些文件,格式为每列一个文件名称。
-F<分隔符号> 设定名称文件中文件之间的分隔符号,缺省为一行一个文件
-L 直接显示符号连接所指向的文件的类别。
-m<魔法数字文件> 指定魔法数字文件。
-v 显示版本信息。
-z 尝试去解读压缩文件的内容。
(1)假如当前目录下面存在 demo.txt 文件,使用 file 查看该文件的类型。
[hxstrive@localhost ~]$ file demo.txt demo.txt: ASCII text
从上面输出可知,demo.txt 是一个文本文件(注意:笔者这里是 Windows 习惯,才会在文件后面添加 .txt 后缀)。
(2)根据一个名称文件来查看文件的类型。假如当前目录下面存在 file_name 文件,改文件中存储了多个文件名,每行文件名独占一行。名称文件 file_name 内容如下:
/home/hxstrive/demo /home/hxstrive/demo.txt /home/hxstrive/ping.txt
查看 file_name 下每个文件的类型,命令如下:
[hxstrive@localhost ~]$ file -f file_name /home/hxstrive/demo: directory /home/hxstrive/demo.txt: ASCII text /home/hxstrive/ping.txt: ASCII text
(3)查看压缩文件的类型。我们从网络上下载了一个压缩文件,如果该文件没有扩展名,此时我们就不能正确选择合适的解压缩软件。此时,就可以使用 file -z 查看压缩文件类型。
[hxstrive@localhost ~]$ file -z test.tar.gz test.tar.gz: POSIX tar archive (GNU) (gzip compressed data, from Unix) [hxstrive@localhost ~]$ file -z test.tg test.tg: POSIX tar archive (GNU) (gzip compressed data, from Unix)
(4)查看符号文件的类型和符号链接文件所指向实际文件的类型。
[hxstrive@localhost ~]$ ll hello lrwxrwxrwx. 1 hxstrive hxstrive 10 Jul 28 09:15 hello -> ./test.zip [hxstrive@localhost ~]$ file -L hello hello: Zip archive data, at least v1.0 to extract
更多关于命令详细参考手册,请使用 man 命令或者 --help 参数获取帮助信息