业界动态
Linux file命令教程:如何确定和处理文件的类型(附实例详解和注意事项)
2025-01-03 04:02

file命令,全称为File Type Checker, 它的主要作用是确定一个或多个文件的类型。这个命令的特性是它能够工作在一种"智能"模式下,这就意味着它可以辨认出各种各样的文件,并且不仅仅局限于文本文件。它可以识别和区分目录,二进制文件,文本文件,并且还可以识别出很多种特定文件格式。

file命令在几乎所有的Linux发行版中都可以使用。不过,可能存在某些发行版尚未安装file命令的情况。这时可以通过下面的安装命令进行安装。

对于使用APT工具的Ubuntu或Debian系统,可以输入以下命令安装

 

对于使用YUM或DNF工具的CentOS或Fedora系统,可以使用以下命令进行安装

CentOS 7:

 

CentOS 8:

 
 

file命令的基本语法如下

 

你可以使用一个或者多个文件作为参数,file命令会为每一个文件都输出一个描述。

下面是命令的部分选项以及它们的说明

选项说明-b, --brief只显示结果,不显示被检查的文件名-c, --checking-printout输出解析magic文件时的详细信息-e, --exclude TEST不进行TEST类型的测试-F, --separator string在文件名和结果之间使用指定字符串作为分隔符-f, --files-from file从文件中读取需要检查的文件列表-h, --no-dereference不检查符号链接引用的文件-i, --mime输出MIME类型-k, --keep-going对于文件类型列表,一直检查到最后-n, --no-buffer不进行缓冲输出-p, --preserve-date保留文件的访问时间-s, --special-files同样检查块和字符类型的特殊文件-v, --version输出版本信息-z, --uncompress尝试查看压缩文件的内容

接下来我们将通过一些实例来详细解释file命令的使用。

实例1: 确定文件类型

我们先来创建一份文本文件,然后使用file命令来检查它的类型。

 

运行上述命令后,你将会获得 “hello.txt: ASCII text” 这样的输出,说明file成功地识别出了我们的文本文件。

实例2: 忽略符号链接

在默认情况下,file命令会检查符号链接引用的文件。但是我们可以使用-h选项来阻止这个行为。

 

在上述命令中,第一个file命令的输出将是 “link_to_hello: symbolic link to hello.txt”,而第二个file命令的输出将是 “link_to_hello: ASCII text”。

实例3: 显示文件的MIME类型

使用-i选项,我们可以得到文件的MIME类型。这个类型对于编程开发和网络应用很重要。

 

上述命令将输出 “hello.txt: text/plain; charset=us-ascii”,明确地告知我们文件的MIME类型和字符集。

实例4: 从文件中读取文件列表

如果我们有一个包含了许多文件名的文件,我们可以使用-f选项来让file自动读取文件名和检查它们。

 

上述命令将输出 “hello.txt: ASCII text”,证明file成功地从文件中读取了文件名并且检查了它们。

实例5: 确认二进制文件类型

file可以自动识别出二进制文件类型,下面我们来看一下怎么检查一个二进制文件。

 

你将得到类似于 “/usr/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV)” 的输出,它告诉你ls是一个64位的可执行二进制文件。

实例6: 检查压缩文件

命令也可以检查压缩文件。让我们创建一个 gzip 压缩文件,并使用 命令检查它的类型。

 

上述命令将会输出 “test.gz: gzip compressed data”,证明 成功地识别出了 gzip 压缩文件。

实例7: 检查图片文件

命令可以识别各种常见的图片格式,比如 JPEG、PNG、GIF 等。以下是一个检查 PNG 图片文件的示例

 

运行上述命令,你可能会收到 “picture.png: PNG image data, 800 x 600, 8-bit/color RGB, non-interlaced” 这样的输出,由此得知图片的宽度、高度、颜色深度和是否交错。

实例8: 排除特定测试

使用 选项,我们可以排除某些特定类型的检查。例如,我们可以排除符号链接测试

 

在以上命令中, 命令将不会尝试判断 是否是一种应用程序类型。

  • 如果你在使用file命令时遇到了 “bash: file: command not found”,那可能是你的系统中尚未安装file命令。你可以按照本文档中的指南进行安装。
  • 在进行文件类型的判断时,file命令是通过查看文件的头部信息来确定的。在某些情况下,file可能无法准确确定文件类型。
  • 在使用file命令的-m选项指定magic文件时,请确保magic文件的格式是正确的,否则file命令的行为可能会出现不确定。
    以上就是本篇文章【Linux file命令教程:如何确定和处理文件的类型(附实例详解和注意事项)】的全部内容了,欢迎阅览 ! 文章地址:https://sicmodule.kub2b.com/news/15027.html
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 企库往资讯移动站 https://sicmodule.kub2b.com/mobile/ , 查看更多   
最新文章
手机单扬声器和双扬声器有什么区别?原来差别这么大手机扬声器「手机单扬声器和双扬声器有什么区别?原来差别这么大」
随着手机的普及和发展,音频体验成为消费者选择手机的重要因素之一。而在手机音频方面,单扬声器和双扬声器是常见的设计方案。那
手机维修知识大全维修手机「手机维修知识大全」
修理手机维修知识大全手机是高科技精密电子产品。工作原理、制造工艺、软件和硬件、测试、技术标准在所有的电器设备中是最复杂的
2k分辨率手机有哪些(2k分辨率的手机哪款性价比最高)
  关于《2K分辨率手机有哪些》的文章  随着科技的不断发展,手机已经成为了我们日常生活中不可或缺的一部分。而在手机的各种
红手指云手机苹果版(红雀浏览器) v1.0.23 iPhone版红手指云手机「红手指云手机苹果版(红雀浏览器) v1.0.23 iPhone版」
红手指手游专用虚拟手机是一款非常实用的手机挂机软件,在这里玩家随时随地离线挂机、自动帮助你闯关升级,非常强大的游戏挂机神
1手机2(一加11手机)
  《手机2》:探索科技与生活的无限可能  在当今数字化时代,智能手机无疑是我们生活中不可或缺的一部分。随着科技的飞速发
手机NFC是什么?怎么使用?手机nfc「手机NFC是什么?怎么使用?」
但很多人不知道的是,除了这三种无线通信技术外,很多智能手机里还有一种无线通信技术,那就是NFC。2004年,飞利浦半导体,诺基
360手机 官网(360手机官网入口)
  探索《360手机官网》:一站式手机技术与服务的平台  在当今数字化时代,手机已经成为我们日常生活中不可或缺的一部分。而
关于手机电池的冷知识:机身温度过高,会永久降低手机电池容量手机电量「关于手机电池的冷知识:机身温度过高,会永久降低手机电池容量」
相信大家在日常使用手机时,最关注的就是我们手机的电量还剩多少,尤其是现在我们一般出门都不带现金,直接通过手机进行支付,所
260手机助手(360手机助手官方版下载)
  《260手机助手》:一站式手机管理和服务的新选择  随着智能手机的普及,我们的生活越来越离不开手机。为了更好地管理和优
小米发布迄今最强被动散热系统,两倍于VC散热,原神满帧运行手机散热「小米发布迄今最强被动散热系统,两倍于VC散热,原神满帧运行」
你的手机“烫”吗? 玩局游戏,瞬间化身暖手宝?拍拍视频就过热,需要“冷静”一下才能继续使用!充电是很快,温度升的也很快…