linux file 命令簡介:
該命令用來識別檔案類型,也可用來辨別一些檔案的編碼格式。它是通過查看檔案的頭部資訊來擷取檔案類型,而不是像Windows通過副檔名來確定檔案類型的。
更多介紹可以查看這篇文章:http://www.jb51.net/LINUXjishu/388984.html
file 官方解釋:Determine type of FILEs. 判定檔案的類型。
小知識:在UNIX/Linux系統中,檔案類型並不是由副檔名決定的(Windows是的)。
開篇例子:
1. $file file.txt
輸出:file.txt: ASCII English text
註:file.txt是我用file –help > file.txt產生的協助文檔
查看—help
複製代碼 代碼如下:
Usage: file [OPTION...] [FILE...]
Determine type of FILEs.
--help display this help and exit
-v, --version output version information and exit
-m, --magic-file LIST use LIST as a colon-separated list of magic
number files
-z, --uncompress try to look inside compressed files
-b, --brief do not prepend filenames to output lines
-c, --checking-printout print the parsed form of the magic file, use in
conjunction with -m to debug a new magic file before installing it
-e, --exclude TEST exclude TEST from the list of test to be performed for file. Valid tests are: ascii, apptype, compress, elf, soft, tar, tokens, troff
-f, --files-from FILE read the filenames to be examined from FILE
-F, --separator STRING use string as separator instead of `:'
-i, --mime output MIME type strings (--mime-type and
--mime-encoding)
--apple output the Apple CREATOR/TYPE
--mime-type output the MIME type
--mime-encoding output the MIME encoding
-k, --keep-going don't stop at the first match
-l, --list list magic strength
-L, --dereference follow symlinks (default)
-h, --no-dereference don't follow symlinks
-n, --no-buffer do not buffer output
-N, --no-pad do not pad output
-0, --print0 terminate filenames with ASCII NUL
-p, --preserve-date preserve access times on files
-r, --raw don't translate unprintable chars to \ooo
-s, --special-files treat special (block/char devices) files as ordinary ones
-C, --compile compile file specified by -m
-d, --debug print debugging messages
解讀:
1. -z
查看壓縮檔內的資訊
2. -b, -e, -i, –r
-b 去掉輸出行的首碼命名
-e 從測試清單到被執行檔案排除測試。有效測試包括:ascii, apptype, compress, elf, soft, tar,
-i 列印MIME
-R 不轉譯無法列印的字元為\ooo
3. magic file
以mgc為副檔名的檔案,Microsoft office媒體目錄檔案
實戰執行個體:
1. $file -z file.zip
查看file.zip包中的檔案資訊
2. $file –i file.txt
out:file.txt: text/plain; charset=us-ascii
列印MIME類型
$file file.txt
out:file.txt: ASCII English text
3. magic file
我翻譯起來實在蹩腳。。 只能猜測查看$which file 看看,沒有收穫。最終通過$file得到
Usage: file [-bchikLlNnprsvz0] [--apple] [--mime-encoding] [--mime-type]
[-e testname] [-F separator] [-f namefile] [-m magicfiles] file ...
file -C [-m magicfiles]
file [--help]
然後嘗試file –C 得到magic.mgc檔案。。。 不知有何用,慚愧
Usage: file [OPTION...] [FILE...]
Determine type of FILEs.
--help display this help and exit
-v, --version output version information and exit
-m, --magic-file LIST 以冒號分割的魔法數字清單作為列表
-z, --uncompress 查看壓縮檔內容
-b, --brief 不首碼檔案名稱到輸出行裡
-c, --checking-printout 列印魔法檔案的解析格式,安裝前,用-m debug一個新的魔法檔案
-e, --exclude TEST 排除測試從測試清單到執行檔案。有效測試:ascii, apptype, compress, elf, soft, tar, tokens, troff
-f, --files-from FILE 從已查的文檔中讀取檔案名稱
-F, --separator STRING 用String作為分隔器 代替 “:”
-i, --mime 輸出MIME類型的字串 (--mime-type and
--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 列印調試資訊
Report bugs to http://bugs.gw.com/