您的位置:首页 > 运维架构 > Linux

【Linux】一步一步学Linux——file命令(37)

2019-07-14 20:19 1341 查看
版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons

00. 目录

文章目录

01. 命令概述

file - 确定文件类型

file命令用来识别文件类型,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。

02. 命令格式

file [ -bcnsvzL ] [ -f 命名文件 ] [ -m 幻数文件 ] file …

03. 常用选项

-b
不输出文件名 (简要模式).
-c
检查时打印输出幻数文件的解析结果.常与 -m 一起使用,用来在安装幻数文件之前调试它.
-f 命名文件
从在参数表前的 命名文件 中读出将要检查的文件名(每行一个文件).要有 命名文件 ,或者至少有一个文件名参数; 如果要检查标准输入, 使用``-作为文件参数.
-m list
指定包含幻数的文件列表.可以是单个文件,也可以是 用冒号分开的多个文件.
-n
每检查完一个文件就强制刷新标准输出. 仅在检查一组文件时才有效. 一般在将文件类型输出到管道时才采用此选项.
-v
打印程序版本并退出.
-z
试图查看压缩文件内部信息.
-L
(在支持符号链接的系统上)选项显示符号链接文件的原文件, 就像 ls(1) 命令的like-named 选项.
-s
通常, file 只是试图去检查在文件列表中那些 stat(2) 报告为正常文件的文件的类型.由于读特殊文件将可能导致 不可知后果,所以这样可以防止发生问题.使用 -s 选项时 file 命令也将去读文件列表中的块特殊文件和字符特殊文件. 一般用于从原始磁盘分区中获得文件系统类型,此文件为块 特殊文件. 这个选项也导致 file 命令忽略 stat(2) 报告的文件大小,因为在有些系统中原始磁盘分区的大小报告为0.

04. 参考示例

4.1 显示文件类型

[deng@localhost ~]$ file test.c
test.c: C source, UTF-8 Unicode (with BOM) text, with CRLF line terminators
[deng@localhost ~]$

4.2 显示文件类型,不显示文件名称

[deng@localhost ~]$ file -b test.c
C source, UTF-8 Unicode (with BOM) text, with CRLF line terminators
[deng@localhost ~]$

4.3 显示文件类型, 显示MIME类别,不显示文件名称

[deng@localhost ~]$ file -b -i test.c
text/x-c; charset=utf-8
[deng@localhost ~]$

4.4 显示符号链接的文件类型

[deng@localhost test]$ ls -l a_link
lrwxrwxrwx 1 deng deng 5 7月  14 20:11 a_link -> a.txt
[deng@localhost test]$ file a_link
a_link: symbolic link to `a.txt'
[deng@localhost test]$

4.5 显示符号连接所指向的文件类型

[deng@localhost test]$ file -L a_link
a_link: empty
[deng@localhost test]$

4.6 查看文件中的文件名的文件类型

[deng@localhost test]$ cat a.txt
/etc/passwd
/home
[deng@localhost test]$ file -f a.txt
/etc/passwd: ASCII text
/home:       directory
[deng@localhost test]$

4.7 使用指定分隔符号替换输出文件名后的默认的":"分隔符

[deng@localhost test]$ file -F "--" a.txt
a.txt-- ASCII text
[deng@localhost test]$ file a.txt
a.txt: ASCII text
[deng@localhost test]$

4.8 尝试去解读压缩文件的内容

[deng@localhost test]$ file -z passwd.tar.gz
passwd.tar.gz: POSIX tar archive (GNU) (gzip compressed data, from Unix, last modified: Sun Jul 14 20:16:46 2019)
[deng@localhost test]$

05. 附录

参考:【Linux】一步一步学Linux系列教程汇总

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: