Linux 之 file 命令

用来探测给定文件的类型,file命令 用来探测给定文件的类型。file命令对文件的检查分为文件系统、魔法幻数检查和语言检查3个过程。
命令语法
file [选项][参数]
命令选项
  • -b:列出辨识结果时,不显示文件名称;
  • -c:详细显示指令执行过程,便于排错或分析程序执行的情形;
  • -f<名称文件>:指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称;
  • -L:直接显示符号连接所指向的文件类别;
  • -m<魔法数字文件>:指定魔法数字文件;
  • -v:显示版本信息;
  • -z:尝试去解读压缩文件的内容。
命令参数
文件:要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。
显示文件类型
> file outfile.txt outfile.txt: ASCII text> file -b outfile.txt<== 不显示文件名称 ASCII text> file -i outfile.txt<== 显示MIME类别。 outfile.txt: text/plain; charset=us-ascii> file -i -b outfile.txt text/plain; charset=us-ascii

一些常见的类型包括:
  • text/plain:普通文本。
  • text/html:HTML文本。
  • application/pdf:PDF文档。
  • application/msword:Word文档。
  • image/png:PNG图片。
  • mage/jpeg:JPEG图片。
  • application/x-tar:TAR文件。
  • application/x-gzip:GZIP文件。
显示符号链接的文件类型
> file system-release system-release: symbolic link to `centos-release'> file -L /tmp/ /tmp/: sticky directory

解读压缩文件的内容
> file -z Python-3.6.4.tgz Python-3.6.4.tgz: POSIX tar archive (GNU) (gzip compressed data, from Unix, last modified: Tue Dec 19 13:36:13 2017, max compression)

解读可执行程序
> file /usr/bin/ls /usr/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aaf05615b6c91d3cbb076af81aeff531c5d7dfd9, stripped> file -i /usr/bin/ls<== 显示MIME类别 /usr/bin/ls: application/x-executable; charset=binary

【Linux 之 file 命令】原文链接:https://rumenz.com/rumenbiji/...
微信公众号:入门小站

    推荐阅读