日期:2014-05-16  浏览次数:20672 次

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

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

本文链接:http://codingstandards.iteye.com/blog/804463 ? (转载请注明出处)

用途说明

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
voi