一天一个shell命令 linux文本系列-file命令用法

 更新时间:2016年06月05日 15:51:02   投稿:mdxy-dxy  
这篇文章主要介绍了一天一个shell命令 linux文本系列-file命令用法,需要的朋友可以参考下

linux file 命令简介:

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

更多介绍可以查看这篇文章:https://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/

相关文章

  • Shell脚本注释写法

    Shell脚本注释写法

    这篇文章主要介绍了Shell脚本注释的3种写法,包含单行注释的方法和多行注释的多种方法,需要的朋友可以参考下
    2014-07-07
  • 在shell脚本中获取上个月最后一天的日期方法

    在shell脚本中获取上个月最后一天的日期方法

    今天小编就为大家分享一篇在shell脚本中获取上个月最后一天的日期方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • win下调用putty执行命令脚本分享

    win下调用putty执行命令脚本分享

    这篇文章主要介绍了win下调用putty执行命令脚本,可以利用这个实现一些自动化的工作,需要的朋友可以参考下
    2014-03-03
  • Shell脚本read用法实现

    Shell脚本read用法实现

    本文主要介绍了Shell脚本read用法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • Bash Shell中Shift用法分享

    Bash Shell中Shift用法分享

    这篇文章主要介绍了Bash Shell中Shift的使用方法,需要的朋友可以参考下
    2013-08-08
  • shell脚本中/bin/bash的作用引号与括号的使用小结

    shell脚本中/bin/bash的作用引号与括号的使用小结

    shell脚本通常第一句是#!/bin/bash,在很多情况中,如果没有设置好这一行,那么该程序很可能无法执行,#!/bin/bash是指此脚本使用/bin/bash来解释执行,本文给大家介绍shell脚本中/bin/bash的作用,引号与括号的使用,感兴趣的朋友一起看看吧
    2023-12-12
  • 浅析Linux打包压缩解压缩命令大全(收藏)

    浅析Linux打包压缩解压缩命令大全(收藏)

    本文给大家分享Linux打包压缩解压缩命令大全,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-09-09
  • Rsync 秒杀一切备份工具,你能手动屏蔽某些目录吗?

    Rsync 秒杀一切备份工具,你能手动屏蔽某些目录吗?

    这篇文章主要介绍了Rsync 秒杀一切备份工具,你能手动屏蔽某些目录吗?本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • shell脚本自动修复mysql损坏的表

    shell脚本自动修复mysql损坏的表

    这篇文章主要介绍了shell脚本如何自动修复mysql损坏的表,需要的朋友可以参考下
    2015-10-10
  • shell脚本操作mysql数据库删除重复的数据

    shell脚本操作mysql数据库删除重复的数据

    今天小编就为大家分享一篇关于shell脚本操作mysql数据库删除重复的数据,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03

最新评论