摘自:http://codingstandards.iteye.com/blog/804463

我使用过的Linux命令之file - 检测并显示文件类型

用途说明

file命令是用来检测并显示文件类型(determine file type)。

常用参数

-b  不显示文件名称,只显示文件类型。在shell脚本中时有用。

-i     显示MIME类别。

-L  直接显示符号连接所指向的文件的类别。

-f namefile    指定名称文件(namefile),该文件每一行为一个文件名,file命令将按每一行的文件名辨别该文件的类型

使用示例

示例一 显示文件类型

[root@web ~]# file install.log

install.log: UTF-8 Unicode text

[root@web ~]# file -b install.log
    
<== 不显示文件名称

UTF-8 Unicode text

[root@web ~]# file -i install.log      <== 显示MIME类别。

install.log: text/plain; charset=utf-8

[root@web ~]# file -b -i install.log

text/plain; charset=utf-8

[root@web ~]#

示例二 显示符号链接的文件类型

[root@rhel55 ~]# ls -l /var/mail

lrwxrwxrwx 1 root root 10 08-13 00:11 /var/mail -> spool/mail

[root@rhel55 ~]# file /var/mail

/var/mail: symbolic link to `spool/mail'
[root@rhel55 ~]# file -L /var/mail

/var/mail: directory
[root@rhel55 ~]# file /var/spool/mail

/var/spool/mail: directory
[root@rhel55 ~]# file -L /var/spool/mail

/var/spool/mail: directory
[root@rhel55 ~]#

示例三

[root@web186 root]# file *

1.sh:                                      ASCII text
1.txt:                                     empty
20080308xzmf.txt:                          ASCII text, with CRLF line terminators
448FD15874B0DC51.wav:                      RIFF (little-endian) data, WAVE audio, ITU G.711 a-law, mono 8000 Hz
449110BA327B23C6.vox:                      8086 relocatable (Microsoft)

600d.wav:                                  RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, stereo 44100 Hz
anaconda-ks.cfg:                           ASCII English text
banner.swf:                                data
commons-beanutils.jar:                     Zip archive data, at least v1.0 to extract
cvs_accept.sh:                             Bourne shell script text executable
data:                                      directory
employer0605.txt:                          Non-ISO extended-ASCII text
GetFirstFile.class:                        compiled Java class data, version 49.0
GetFirstFile.java:                         ASCII Java program text
HELPFILE:                                  C++ program text
httptunnel.zip:                            Zip archive data, at least v2.0 to extract
iptables_man.txt:                          ASCII English text, with overstriking
lnx61su_171.tar.gz:                        gzip compressed data, from Unix
megamgr.bin.filepart:                      ELF 32-bit LSB executable,
Intel 80386, version 1 (SYSV), for GNU/Linux 2.0.0, statically linked,
stripped
MegaPR_Linux_A02.tar.gz:                   gzip compressed data, was "MegaPR_Linux_A02.tar", from Win/32
mess0429.txt:                              ISO-8859 text, with very long lines
smartmontools-5.36.tar.gz:                 gzip compressed data, from Unix, max compression
sms.qunfa:                                 ELF 32-bit LSB executable,
Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked
(uses shared libs), not stripped
sms.vip.cfg:                               ISO-8859 text, with very long lines
top.txt:                                   ASCII text, with CRLF, LF line terminators
voice20061128.rar:                         RAR archive data
vox2amr.sh:                                Bourne-Again shell script text executable
[root@web186 root]#

注:使用file命令显示出来的文件类型有些情况下不一定太准确,如上面黑体显示的.vox文件格式,应该是Dialogic VOX File格式的。

问题思考

1. 怎样自定义某种文件类型?

相关资料

【1】脚本学习 linux file命令: 辨别文件类型

返回 我使用过的Linux命令系列总目录

我使用过的Linux命令之file - 检测并显示文件类型的更多相关文章

  1. linux命令学习——file

    1.简介 file命令是用来检测并显示文件类型(determine file type).通过file指令,我们得以辨识该文件的类型,例如可以知道动态连接库是32位还是64位. 2.命令格式 file ...

  2. 每天一个linux命令:file(11)

    file file命令用来探测给定文件的类型.file命令对文件的检查分为文件系统.魔法幻数检查和语言检查3个过程. 格式 file [选项] [参数] 参数选项 参数 备注 -b 列出辨识结果时,不 ...

  3. linux 命令之file

    Linux file命令用于辨识文件类型. 通过file指令,我们得以辨识该文件的类型. 语法 file [-bcLvz][-f <名称文件>][-m <魔法数字文件>...] ...

  4. Linux命令之file

    file [选项] [文件名] 确认文件类型 (1).常用选项 magic file指的是哪些具有特殊文件格式的文件 -b,--brief 不列出文件名称 -c,--checking-printout ...

  5. Linux命令之 file命令

    该命令用来识别文件类型,也可用来辨别一些文件的编码格式.它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的. 执行权限 :All User 指令所在路径:/us ...

  6. linux命令(49):显示文件的指定行,打印中间几行

    linux 如何显示一个文件的某几行(中间几行) [一]从第3000行开始,显示1000行.即显示3000~3999行 cat filename | tail -n +3000 | head -n 1 ...

  7. 【改造Linux命令之rm - 删除文件或目录-】

    用途说明 rm命令是常用的命令,用来删除文件或目录(remove files or directories).它也是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比 ...

  8. 十年linux命令总结

    十年linux命令总结 本文链接: http://codingstandards.iteye.com/blog/786653 关于命令类型划分 本表中列出了我穷尽了我所有的记忆整理出来的Linux命令 ...

  9. 初识50个Linux命令

    1. [命令]:cat [功能说明]: concatenate files and print on the standard output #连接文件并打印到标准输出,有标准输出的都可以用重定向定向 ...

随机推荐

  1. MATLAB三维曲面

    今天终于测试了,发下来第一张试卷中只会做一小题.我蒙了!!! 所以呢,我现在再做一下,总结总结! 作函数 f(x)=2(x1-1)4+2x22 的三维图. 这道题要用到的知识点有函数meshgrid. ...

  2. Climbing Stairs 解答

    Question You are climbing a stair case. It takes n steps to reach to the top. Each time you can eith ...

  3. iOS 实时监听app的网络连接状态

    实际iOS开发中,在网络通信中我们大部分使用第三方(只谈短链),譬如 AFNetworking.ASIHttpRequest(这个停更了,想必现在没多少人用),swift的 Alamofire 等. ...

  4. AngularJS 的一些坑

    UI的闪烁 Angular的自动数据绑定功能是亮点,然而,他的另一面是:在Angular初始化之前,页面中可能会给用户呈现出没有解析的表达式.当DOM准备就绪,Angular计算并替换相应的值.这样就 ...

  5. 使用react-native做一个简单的应用-03欢迎界面

    Android和iOS的欢迎界面是不一样的,在iOS中有一个默认的欢迎界面,而Android则需要自己写.因此我就分开说一下这两个平台的欢迎界面的搭建.下面先看一下实现效果: Android: iOS ...

  6. Oracle闪回详解

      1.问题定义 闪回是dba做的工作.现在也可授权给某个用户. 闪回的定义:就是将用户错误的操作回恢到以前的状态.即使你的事务提交的commit. 如果你删除了一个表.Drop table(DDL) ...

  7. 工具使用 eclipse the user operation is waiting for Building Working to be completed。

    问题定位: 在使用 IDE开发时,学习一个新事物如语言,框架,出现错误时暂时无法判断是新写的代码错还是IDE使用错: 则编写简单的未使用该技术的test.java ,运行后还有异常出现,则不是代码问题 ...

  8. HDU 1070 - Milk

    给每种牛奶价格和量 要求买最便宜的牛奶 #include <iostream> using namespace std; int t,n; ][]; ],v[]; int main() { ...

  9. 类 的继承性(Inherits)与 重写(Overrides)

    (类) 与 (结构) 类似,让我们可以定义并封装成一组相关项的数据类型.比如封装成结构,那么这个封装包的数据类型就为值类型:如封装成类,那么这个封装包的数据类型就为引用类型. 然而与结构的一个重要区别 ...

  10. C++ 常见容器

    迭代器. 基本介绍(来源于网络):迭代器是一种抽象的概念.能够遍历容器内的 部分/全部 元素.每个迭代器中包含着元素的地址.  它可以将 抽象容器 和 泛型算法 结合起来.   大致原理: 1)迭代器 ...