一天一个shell命令 linux文本系列-file命令用法
linuxfile命令简介:
该命令用来识别文件类型,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的。
更多介绍可以查看这篇文章:https://www.nhooo.com/LINUXjishu/388984.html
file官方解释:DeterminetypeofFILEs.判定文件的类型。
小知识:在UNIX/Linux系统中,文件类型并不是由扩展名决定的(Windows是的)。
开篇例子:
1.$filefile.txt
输出:file.txt:ASCIIEnglishtext
注:file.txt是我用file–help>file.txt生成的帮助文档
查看—help
Usage:file[OPTION...][FILE...] DeterminetypeofFILEs. --help displaythishelpandexit -v,--version outputversioninformationandexit -m,--magic-file LIST useLISTasacolon-separatedlistofmagic numberfiles -z,--uncompress trytolookinsidecompressedfiles -b,--brief donotprependfilenamestooutputlines -c,--checking-printout printtheparsedformofthemagicfile,usein conjunctionwith-mtodebuganewmagicfilebeforeinstallingit -e,--excludeTEST excludeTESTfromthelistoftesttobeperformedforfile.Validtestsare:ascii,apptype,compress,elf,soft,tar,tokens,troff -f,--files-fromFILE readthefilenamestobeexaminedfromFILE -F,--separatorSTRING usestringasseparatorinsteadof`:' -i,--mime outputMIMEtypestrings(--mime-typeand --mime-encoding) --apple outputtheAppleCREATOR/TYPE --mime-type outputtheMIMEtype --mime-encoding outputtheMIMEencoding -k,--keep-going don'tstopatthefirstmatch -l,--list listmagicstrength -L,--dereference followsymlinks(default) -h,--no-dereference don'tfollowsymlinks -n,--no-buffer donotbufferoutput -N,--no-pad donotpadoutput -0,--print0 terminatefilenameswithASCIINUL -p,--preserve-date preserveaccesstimesonfiles -r,--raw don'ttranslateunprintablecharsto\ooo -s,--special-files treatspecial(block/chardevices)filesasordinaryones -C,--compile compilefilespecifiedby-m -d,--debug printdebuggingmessages
解读:
1.-z
查看压缩文件内的信息
2.-b,-e,-i,–r
-b去掉输出行的前缀命名
-e从测试列表到被执行文件排除测试。有效的测试包括:ascii,apptype,compress,elf,soft,tar,
-i打印MIME
-R不转译无法打印的字符为\ooo
3.magicfile
以mgc为扩展名的文件,Microsoftoffice媒体目录文件
实战实例:
1.$file-zfile.zip
查看file.zip包中的文件信息
2.$file–ifile.txt
out:file.txt:text/plain;charset=us-ascii
打印MIME类型
$filefile.txt
out:file.txt:ASCIIEnglishtext
3.magicfile
我翻译起来实在蹩脚。。只能猜测查看$whichfile看看,没有收获。最终通过$file得到
Usage:file [-bchikLlNnprsvz0][--apple][--mime-encoding][--mime-type]
[-etestname][-Fseparator][-fnamefile][-mmagicfiles]file...
file -C[-mmagicfiles]
file [--help]
然后尝试file–C得到magic.mgc文件。。。不知有何用,惭愧
Usage:file[OPTION...][FILE...]
DeterminetypeofFILEs.
--help displaythishelpandexit
-v,--version outputversioninformationandexit
-m,--magic-fileLIST 以冒号分割的魔法数字清单作为列表
-z,--uncompress 查看压缩文件内容
-b,--brief 不前缀文件名到输出行里
-c,--checking-printout 打印魔法文件的解析格式,安装前,用-mdebug一个新的魔法文件
-e,--excludeTEST 排除测试从测试列表到执行文件。有效的测试:ascii,apptype,compress,elf,soft,tar,tokens,troff
-f,--files-fromFILE 从已查的文档中读取文件名
-F,--separatorSTRING 用String作为分隔器代替“:”
-i,--mime 输出MIME类型的字符串(--mime-typeand
--mime-encoding)
--apple 输出苹果类型CREATOR/TYPE
--mime-type 打印MIME类型
--mime-encoding 打印MIME编码
-k,--keep-going 不停留在第一个匹配
-l,--list 列出magic深度
-L,--dereference 跟随符号链接(缺省)
-h,--no-dereference 不跟随符号链接
-n,--no-buffer 不缓冲输出
-N,--no-pad 不打印输出
-0,--print0 NUL终止文件
-p,--preserve-date 保持文件上的原访问时间
-r,--raw 不转移不可打印的字符到\ooo
-s,--special-files 把特殊(块/字符设备)文件作为普通文件对待
-C,--compile 编译用-m指定的文件
-d,--debug 打印调试信息
Reportbugstohttp://bugs.gw.com/