linuxfile命令详解

Linux系统中的file命令用于查询文件类型。
我们通常通过文件扩展名来判断文件的类型,而file命令则通过详细读取文件内容并查找特征来判断文件类型。
file命令的具体内容:1、file命令判断文件类型的顺序:设备查询、目录、符号文件及其他特殊文件、压缩文件查询、tar文件查询、基于Magic数据库文件的查询、ASCII查询、UNICODE等文件类型如果此文件不满足上述要求,则该文件是二进制文件。
2、原理:file命令是通过从数据库中读取信息来判断对应的文件,其中包含了不同文件独有的特征。
数据库文件存储在/etc中。
/magic、/usr/share/misc/file/magic或其他位置。
0string\177ELFELF>4byte0invalidclass>4byte132bit>5byte1LSB>>16leshort2executable3。
magic文件由4部分组成:offset数据类型value输出字符串。
有关magic文件格式的更多信息可以通过manmagic找到。

Linux系统中file命令的使用详解

命令简介:

该命令用于识别文件类型,也可用于识别某些文件的编码格式。
它通过检查文件头信息来获取文件类型,而不是像Windows那样通过扩展名来确定文件类型。

执行权限:AllUser

语句路径:/usr/bin/file

命令语法:

复制代码如下:file[-bchikLnNprsvz][-fnamefile][-Fseparator][-mmagicfiles]file...

命令参数:

下表列出了一些常用的参数。

使用示例:1:查看file命令的帮助信息

复制代码如下:[root@DB-Server~]#file--helpUsage:file[OPTION]。
FILE]....确定文件的文件类型。

-m,--magic-fileLIST使用LIST作为冒号分隔的magicnumber文件列表-z,--uncompresstrytolookinsidecompressedfiles-b,--briefnonprependfilenametooutputlines-c,--checking-printoutprinttheparsedformatofthemagicfile,useittogether-mtodebuganewmagicfilebeforeinstallingit-f,--files-fromFILEreadthefilenametobeexaminedfromFILE-F,--separatorstringusestringasseparatorinsteadof`:'-i,--mimeoutputmimetypestrings-k,--keep-goingdon'tstopatthefirstmatch-L,--dereferencecausessymlinktobefollowed-n,--no-bufferdonotbufferoutput-N,--no-paddonotpadoutput-p,--preserve-datepreserveaccesstimesonfiles-r,--rawdon'ttranslateunprintablecharsto\ooo-s,--special-filestreatspecial(block/chardevices)filesasordinaryones--helpdisplaythishelpandexit--versionoutputversioninformationandexit当然,你也可以使用manfile来获取有关帮助文档的更详细信息。

2:不显示文件名,只显示文件格式和编码。
通过下面两个命令,可以清楚地了解-b参数的作用。

复制代码如下:[root@DB-Server~]#fileTemp.txtTemp.txt:UTF-8Unicodetext,withverylonglines,withCRLFlineterminators[root@DB-Server~]#file-bTemp.txtUTF-8Unicodetext,withverylonglines,withCRLFlineterminators3:MIME类型字符串复制代码输出代码如下:[root@DB-Server~]#file-iTemp.txtTemp.txt:text/plain;charset=utf-8

4:查看文件文件名的文件类型

该参数为非常适合shell脚本来查找和识别某种文件类型的数据。

您可以使用如下file命令来确定文件类型。
以下屏幕截图显示了使用file命令确定不同文件类型的示例。

复制代码如下:howtoing@howtoing~/Linux-Tricks$dirBACKUPmaster.zipcrossroads-stable.tar.gznum.txtEDWARD-MAYA-2011-2012-NEW-REMIX.mp3reggea.xspfLinux-Security-Optimization-Book.gif-链接howtoing@howtoing~/Linux-Tricks$fileBACKUP/BACKUP/:目录howtoing@howtoing~/Linux-Tricks$filemaster.zipmaster.zip:Ziparchivedata,atleastv1.0toextracthowtoing@howtoing~/Linux-Tricks$filecrossroads-stable.tar.gzcrossroads-stable.tar.gz:gzip压缩数据,来自Unix,lastmodified:TueApr515:15:202011howtoing@howtoing~/Linux-Tricks$fileLinux-Security-Optimization-Book.gifLinux-Security-Optimization-Book.gif:GIFimagedata,version89a,200x259howtoing@howtoing~/Linux-Tricks$fileEDWARD-MAYA-2011-2012-NEW-REMIX.mp3EDWA​​RD-MAYA-2011-2012-NEW-REMIX.mp3:AudiofilewithID3version2.3.0,包含:MPEGADTS,layerIII,v1,192kbps,44.1kHz,JntStereotecmint@howtoing~/Linux-Tricks$file/dev/sda1/dev/sda1:blockspecialtecmint@howtoing~/Linux-Tricks$file/dev/tty1/dev/tty1:characterspecial

5:尝试破译压缩文件的内容

复制代码如下:[root@DB-Server~]#file-zTemp.txt.gzTemp.txt.gz:UTF-8Unicodetext,有很长的行,带有终止符行CRLF(gzip压缩数据,为“Temp.txt”",fromUnix,lastmodified:TueJun2400:34:152014)[root@DB-Server~]#

6:查看文件类型对应软链接

如下所示,创建一个软链接文件,然后使用file和file-L带参数显示。

复制代码如下:[root@DB-服务器~]#ln-sTemp.txt.gzs文件[root@DB-Server~]#filesfilesfile:symboliclinkto`Temp.txt.gz'[root@DB-Server~]#file-Lsfilesfile:gzipcompresseddata,原为“Temp.txt”,来自Unix,最后修改时间:TueJun2400:34:152014[root@DBServer~]#

了解Linux的命令file掌握文件类型判断linux的命令file

Linux文件的类型是由系统管理员使用的命令文件决定的。
使用file命令可以帮助您了解所有文件的类型。
因此,掌握file命令将有助于你更好地识别文件类型。
file命令可以用来获取任意文件的文件属性该命令可以通过提取文件类型、文件编码等信息来识别文件类型。
如果要运行file命令,可以使用以下命令:$file该命令将输出文件类型和相关文件信息。
例如,file命令输出文件myfile.txt的文件类型和编码格式,这意味着文件myfile.txt是一个UTF-8编码的文本文件:$filemyfile.txtmyfile.txt:UTF-8Unicodetext上面的命令告诉我们我们知道myfile.txt是一个文本文件,可以直接在文本编辑器中打开并查看该文本文件的内容。
另外,file命令还可以用来识别其他类型的文件,例如图像文件。
如果file命令输出图像文件img.jpg的文件类型和编码格式,这意味着这是一个JPEG格式的文件$fileimg.jpgimg.jpg:JPEGimage该文件不能直接在文本编辑器中打开,但需要。
使用相关图像处理软件打开。
此外,file命令还可以确定可执行文件的文件类型以及任何其他文件类型,因此了解file命令将有助于您更好地确定文件类型。
您可以使用以下代码块查看可执行文件的文件类型:$fileprogramprogram:ELF64-bitLSExecutable,x86-64,version1(SYSV),dynamicallylinked(usessharedlibs),forGNU/Linux3.2.0,BuildID[sha1]=,notstripped结论:掌握Linux命令文件将帮助您更好地确定类型文件。
file命令可以查看文件类型以及所有文件类型的编码格式,可以帮助您更好地评估文件属性。
您还可以使用代码块来查看可执行文件的文件类型。
因此,掌握file命令将有助于你更好地识别文件类型。