前言

file命令可以获取多种文件类型,包括文本文件、脚本文件、源码文件、多媒体文件(音频视频)等。file是通过查看文件的头部内容,来获取文件的类型,而不像Window那样是通过扩展名来确定文件类型的。

命令用法

-z 获取压缩文件的类型(不能是用tar打包过的),比如gzip、zip等压缩过的

-L 获取软链所指向的文件的类型

-f 指定文件列表参数,获取该列表里面的所有文件的类型

常见用法

file FileName

 1: [root@master lianxi]# file test 
 2: test: ASCII text

 1: [root@master lianxi]# > 1
 2: [root@master lianxi]# file 1
 3: 1: empty

file使用通配符,获取多个文件的类型

file *.lua (以.lua结尾的文件)

 1: [root@master lianxi]# file *.lua
 2: 2.lua: ASCII text
 3: 3.lua: ASCII text
 4: 4.lua: ASCII text

数据文件类型(某些程序专用的数据格式)

 1: [root@master lianxi]# file /var/log/lastlog 
 2: /var/log/lastlog: data

Python脚本文件

 1: [root@master lianxi]# file print.py 
 2: print.py: a /bin/python  script text executable

-z 参数,可以获取用gzip、zip压缩过的文件的类型

 1: [root@master lianxi]# gzip print.py 
 2: [root@master lianxi]# ls print.py.gz 
 3: print.py.gz
 4: [root@master lianxi]# zip -r print.py.zip print.py.gz 
 5: adding: print.py.gz (stored 0%)
 6: [root@master lianxi]# ls print.py.zip 
 7: print.py.zip
 8: [root@master lianxi]# file print.py.*
 9: print.py.gz:  gzip compressed data, was "print.py", from Unix, last modified: Fri Jun 14 20:48:14 2013
 10: print.py.zip: Zip archive data, at least v1.0 to extract

-L 获取软链指向的文件的类型。默认是返回软链本身类型

 1: [root@master lianxi]# ln -s test test.soft
 2: [root@master lianxi]# ls -l test*
 3: -rw-r--r-- 1 root root 25 Jun 14 20:09 test
 4: lrwxrwxrwx 1 root root  4 Jun 14 20:51 test.soft -> test
 5: [root@master lianxi]# file test.soft 
 6: test.soft: symbolic link to `test'
 7: [root@master lianxi]# file -L test.soft 
 8: test.soft: ASCII text
 9: [root@master lianxi]# 

-f 获取一个文件名列表的所有文件的类型。1)注意路径是否正确 2)每行一个文件名

 1: [root@master dir]# ls
 2: 1  2  3
 3: [root@master dir]# ls > a
 4: [root@master dir]# cat a
 5: 1
 6: 2
 7: 3
 8: a
 9: [root@master dir]# file -f a
 10: 1: ASCII text
 11: 2: ASCII text
 12: 3: empty
 13: a: ASCII text

特殊说明

1)在Window中,Windows系统对文件系统文件的标识是通过其扩展名。但是Windows上的程序自己也可以通过文件内容来判断文件内容类型

2)file 是通过读取文件头部内容,来获取文件类型,比如BASH脚本文件以#!/bin/bash 或Python脚本以#!/bin/python等,file读取其头部信息判断类型。

3)file可以辨识的文件类型很多,文本文件、脚本文件、数据文件、多媒体文件等。

总结

file命令,获取文件类型。

转载于:https://www.cnblogs.com/xujie2013/p/3408516.html

linux命令详解:file命令相关推荐

  1. dd命令、cp命令详解+dd命令、cp命令对比---delong

    1.dd命令详解 1)中文man手册dd的解释 NAME       dd - 转换和拷贝文件 摘要使用方法: dd    [--help]   [--version]   [if=file]   [ ...

  2. ARP命令详解--网络命令详解二

    显示和修改"地址解析协议 (ARP)"缓存中的项目.ARP 缓存中包含一个或多个表,它们用于存储 IP 地址及其经过解析的以太网或令牌环物理地址.计算机上安装的每一个以太网或令牌环 ...

  3. nslookup指定服务器是什么命令,nslookup命令详解_nslookup命令指定dns

    nslookup命令作用是用于查询dns解析域名记录,一般我们使用都是通过此命令可以检测DNS是否正常或者有时候我们把域名A记录更改的ip址,通常更改A记录需要一定的时间才生效,我们可以通过此命令解析 ...

  4. linux mkfs 命令 详解,mkfs命令详解

    首页 > 其他分享> 文章详细 mkfs命令详解 2019-02-06 14:42:48阅读:236来源:互联网 mkfs命令-->make filesystem的缩写:用来在特定的 ...

  5. linux yum命令详解,yum命令详解

    yum对于经常操作Linux的用户来说并不陌生,也是安装软件包常用的命令,接下来吾爱编程为大家详细的介绍一下yum命令,有需要的小伙伴可以参考一下: 1.yum是什么? yum命令是在Fedora和R ...

  6. linuxmove命令_move命令详解 dos命令 move的用法

    Linux mmove命令详解 Linux mmove命令怎么用 mmove为mtools工具命令,模拟MS-DOS的move命令,可在MS-DOS文件系统中移动现有的文件或目录,或是更改现有文件或目 ...

  7. ping命令详解 ping命令入门详解

    在这个时代,科技越来越发达,网络已经越来越成为人们不可缺少的一部分.计算机也已经是很多学校的课程了,因为计算机技术是非常有技术性的专业,它其中涉及到很多专业知识,需要通过学习才能掌握.今日小编就为大家 ...

  8. android+tracert命令详解,tracert 命令详解(示例代码)

    tracert 命令详解 How to Use the TRACERT Utility The TRACERT diagnostic utility determines the route to a ...

  9. linux jmap命令详解,jmap命令 linux jmap如何使用

    1, linux jmap如何使用 jmap命令可以获得运行中的jvm的堆的快照,从而可以离线分析堆,以检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中什么对象最多,各种对象所占内存的大小 ...

  10. linux dc退出命令,Linux dc 命令 command not found dc 命令详解 dc 命令未找到 dc 命令安装 - CommandNotFound ⚡️ 坑否...

    显示行号 | 选择喜欢的代码风格 默认 GitHub Dune LakeSide Plateau Vibrant Blue Eighties Tranquil dc 命令是任意精度的计算器,他使用 R ...

最新文章

  1. 在Ubuntu 16.04.5 LTS上安装pygame模块
  2. Android Permission(授权)大全
  3. JavaScript之事件的绑定与移除
  4. 非你所想:eigrp非等价负载均衡
  5. segment fault
  6. CENTOS elasticsearch plugin install:Failed: SSLException[java.security.ProviderException,解决
  7. 利用Java的BigDecimal与马青公式精确计算π后10000位,
  8. 单边指数信号的特点_今日股市分析:上证指数若能守住3400,蓄力反弹就有戏...
  9. pycharm断点调试django
  10. war包怎么解压_微信猫和老鼠主题怎么搞?快来看
  11. 获取手机唯一标识插件_非常强大的几款手机浏览器,适用于某些黑科技功能
  12. System.ConfigurationManager类用于对配置文件的读取
  13. python3语法学习第四天--序列
  14. Linux prerouting和postrouting的区别
  15. Windows7下UEFI开发EDK2环境搭建(VS2013+UDK2015+IASL+patch+Openssl)
  16. form表单提交到controller时出现404的尴尬问题(或链接不到.action、链接不到.do跳404的问题)
  17. 计算机网络原理 - 网络层、链路层总结笔记
  18. 人人商城(分销版)1.11.7微擎原版,装修店铺后,网站链接失效,页面不显示数据
  19. 计算机专业英语求职自我介绍,计算机专业英语面试自我介绍
  20. 三峡学院计算机调剂,重庆三峡学院2019考研预调剂公告

热门文章

  1. Keras深度学习框架介绍(结束)
  2. 海外高校毕业证的颜色
  3. it招聘的一些门道与招聘数据分析(持续更新)
  4. 2018Alibaba数学竞赛-决赛试题
  5. matlab求借带参数的方程组
  6. 深度学习基础1(神经网络)
  7. python指定变量类型_Python#160;变量类型_python教程
  8. 利用python进行数据分析论文_利用Python进行数据分析之pandas的高级用法
  9. tar time stamp in the future问题
  10. 枚举 PROBLEM 1 生理周期