网站搜索

如何找出 Linux 中的文件类型


在任何操作系统上确定文件类型的最简单方法通常是查看其扩展名(例如 .xml.sh.c<.tar 等)。如果文件没有扩展名怎么办,如何确定其类型?

另请阅读:查找 Linux 中文件系统类型的 7 种方法

Linux 有一个名为 file 的有用实用程序,它对指定文件执行一些测试,并在测试成功后打印文件类型。在这篇短文中,我们将解释有用的文件命令示例来确定 Linux 中的文件类型。

注意:要获得本文中描述的所有选项,您应该运行文件版本5.25(在Ubuntu存储库中提供)或更高版本。 CentOS 存储库有旧版本的 file 命令 (file-5.11),它缺少一些选项。

您可以运行以下命令来验证文件实用程序的版本,如图所示。

file -v

file-5.33
magic file from /etc/magic:/usr/share/misc/magic

Linux 文件命令示例

1. 最简单的文件命令如下所示,您只需提供一个要查找其类型的文件即可。

file etc

2. 您还可以从文件中传递要检查的文件的名称(每行一个),您可以使用 -f 标志进行指定,如图所示。

file -f files.list

3. 要使文件运行得更快,您可以从测试列表中排除测试(有效测试包括 apptype、ascii、encoding、token、cdf、compress、elf、soft 和 tar),以确定文件类型,请使用 -e 标志,如图所示。

file -e ascii -e compress -e elf etc

4. 例如,-s 选项使文件也读取块或字符特殊文件。

file -s /dev/sda

/dev/sda: DOS/MBR boot sector, extended partition table (last)

5. 添加 -z 选项指示 file 查看压缩文件内部。

file -z backup

6. 如果您只想报告有关压缩文件内容而不是压缩情况的信息,请使用 -Z 标志。

file -Z backup

7. 您可以使用 -i 选项告诉 file 命令输出 mime 类型字符串,而不是更传统的人类可读字符串。

file -i -s /dev/sda

/dev/sda: application/octet-stream; charset=binary

8. 此外,您还可以通过添加 -extension 开关来获取所找到的文件类型的有效扩展名的斜杠分隔列表。

file --extension /dev/sda

有关更多信息和使用选项,请参阅文件命令手册页。

man file

就这样! 文件命令是一个有用的Linux实用程序,用于确定不带扩展名的文件的类型。在本文中,我们分享了一些有用的文件命令示例。如果您有任何问题或想法要分享,请使用下面的反馈表与我们联系。