Linux file命令的使用

 更新时间:2020年08月28日 09:48:51   作者:Dabelv  
这篇文章主要介绍了Linux file命令的使用,帮助大家更好的理解和学习Linux,感兴趣的朋友可以了解下

1.命令简介

file命令用来识别文件类型,对文件的检查分为文件系统、魔法幻数检查和语言检查三个过程,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。

2.命令格式

file [-bchiklLNnprsvz0] [--apple] [--mime-encoding] [--mime-type] [-e testname] [-F separator] [-f namefile] [-m magicfiles] file ...
file -C [-m magicfiles]
file [--help]

3.选项说明

-b,--brief:简约模式,不显示文件名称;
-C,--compile:生成magic.mgc文件。配合选项-m使用
-c, --checking-printout:对魔法文件的解析结果打印输出
-e, --exclude [testname]:排除对指定类型文件的检查,testname可取值有apptype、ascii、encoding、tokens、cdf、compress、elf、soft、tar
-F, --separator [separator]:使用指定分隔符替换输出文件名后的默认的":"分隔符
-f, --files-from [namefile]:从文件namefile中读取待检测的文件,每行一个
-i, --mime:输出mime类型的字符串而不是可读字符串,比如输出"text/plain; charset=us-ascii"而不是"ASCII text"
--mime-type, --mime-encoding:像-i,但是只打印指定元素;
-k, --keep-going:不在首次匹配时停止,继续检查
-l, --list:Print information about the strength of each magic pattern
-L, --dereference:查看对应软链接对应文件的文件类型
-m, --magic-file [magicfiles]:指定magic file。magic file指的是那些具有特殊内容的文件,比如C文件,它会有#include字样;tar文件的前几个字节会有特殊的规则。而检验magic file规则就是根据这些特殊的格式去判断一个文件的类型。而这些规则是保存在$HOME/.magic.mgc
-N, --no-pad:Don't pad filenames so that they align in the output
-n, --no-buffer:强制刷新标准输出stdout。这个选项只在检查多个文件时有效。在通过管道获取文件类型时也可以使用该选项
-p, --preserve-date:保留待检测文件的access time,即使file命令不更改待检测文件的access time
-r, --raw:不将不可打印字符转换为\ooo的八进制形式,正常情况下,file会做转换
-s, --special-files:正常情况下,file命令只支持普通文件的检测,就像stat(2)一样。使用该选项可以让file命令支持特殊文件,比如原始磁盘分区等
-v, --version:显示版本信息
-z, --uncompress:尝试去解读压缩文件的内容
-0, --print0:在文件名后输出空字符'\0'
--help:显示帮助信息

4.常用示例

(1)查看文件类型。

[root@TENCENT64 ~]# file Changelog 
Changelog: ASCII text

(2)不输出文件名称,只显示文件格式以及编码。

[root@TENCENT64 ~]# file -b Changelog 
ASCII text

(3)输出mime类型的字符串。

[root@TENCENT64 ~]# file -i Changelog 
Changelog: text/plain; charset=us-ascii

(4)查看软链接对应文件的文件类型。

[root@TENCENT64 ~]# ll Changelog*
-rw-r--r-- 1 root root 1598 Nov 6 22:39 Changelog
lrwxrwxrwx 1 root root  9 Nov 6 23:07 Changelog.ln -> Changelog

#产看软链接本身类型
[root@TENCENT64 ~]# file Changelog.ln
Changelog.ln: symbolic link to `Changelog'

#查看软链接对应文件的文件类型
[root@TENCENT64 ~]# file -L Changelog.ln
Changelog.ln: ASCII text

以上就是Linux file命令的使用的详细内容,更多关于Linux file命令的资料请关注脚本之家其它相关文章!

相关文章

  • 使用Apache Hudi 加速传统的批处理模式的方法

    使用Apache Hudi 加速传统的批处理模式的方法

    这篇文章主要介绍了Apache Hudi 如何加速传统的批处理模式,借助Apache Hudi,我们希望在将数据摄取到数据湖中的同时,找到更好的重复数据删除和数据版本控制优化解决方案,需要的朋友可以参考下
    2022-04-04
  • Linux简介及最常用命令(简单易学,但能解决95%以上的问题)

    Linux简介及最常用命令(简单易学,但能解决95%以上的问题)

    这篇文章主要介绍了Linux简介及最常用命令(简单易学,但能解决95%以上的问题),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-08-08
  • Linux设置文件和目录权限方式

    Linux设置文件和目录权限方式

    在Linux系统中,文件和目录的权限分为访问权限和归属权限,访问权限包括读(r)、写(w)、执行(x),可用字符或数字方式设置,归属权限涉及文件的所有者和用户组,特殊权限包括suid、sgid和Sticky位,分别用于提高程序的安全性和管理共享目录
    2024-11-11
  • Linux服务器配置多个svn仓库流程详解

    Linux服务器配置多个svn仓库流程详解

    这篇文章主要介绍了linux服务器配置多个svn仓库流程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • Ubuntu下开启Apache对.htaccess 的支持

    Ubuntu下开启Apache对.htaccess 的支持

    这篇文章主要介绍了Ubuntu下开启Apache对.htaccess 的支持的方法,已经在xampp开启ModRewrite的方法,非常的实用,推荐给大家,希望大家能够喜欢。
    2015-03-03
  • Linux基础之终端、控制台、tty、pty简介说明

    Linux基础之终端、控制台、tty、pty简介说明

    本文主要讲解了Linux系统下的终端、控制台、tty、pty简单介绍,虽然是基础内容但非常重要,大家一定要理解
    2018-03-03
  • 在Linux服务器上安装Anaconda超详细教程

    在Linux服务器上安装Anaconda超详细教程

    本文档详细介绍了如何在Linux服务器上安装Anaconda,并创建及激活虚拟环境,以及如何在环境中安装Pytorch,从下载Anaconda安装包到解决可能出现的bug,再到设置环境变量和验证安装成功,每个步骤都配有清晰的说明和操作指令,需要的朋友可以参考下
    2025-02-02
  • Linux设备之网络驱动介绍

    Linux设备之网络驱动介绍

    大家好,本篇文章主要讲的是Linux设备之网络驱动介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Linux下删除SVN版本库的详细过程

    Linux下删除SVN版本库的详细过程

    在Linux系统中,删除Subversion(SVN)版本库是一个相对简单的过程,然而,在执行删除操作之前,确保你已经备份了所有重要的数据,因为删除操作是不可逆的,本文将指导你如何安全地删除SVN版本库,需要的朋友可以参考下
    2025-02-02
  • Ubuntu修改密码及密码复杂度策略设置方法

    Ubuntu修改密码及密码复杂度策略设置方法

    这篇文章主要介绍了Ubuntu修改密码及密码复杂度策略设置,方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08

最新评论