linux命令详解:file命令
前言
file命令可以获取多种文件类型,包括文本文件、脚本文件、源码文件、多媒体文件(音频视频)等。file是通过查看文件的头部内容,来获取文件的类型,而不像Window那样是通过扩展名来确定文件类型的。
命令用法
-z 获取压缩文件的类型(不能是用tar打包过的),比如gzip、zip等压缩过的
-L 获取软链所指向的文件的类型
-f 指定文件列表参数,获取该列表里面的所有文件的类型
常见用法
file FileName
1: [root@master lianxi]# file test2: test: ASCII text1: [root@master lianxi]# > 12: [root@master lianxi]# file 13: 1: empty
file使用通配符,获取多个文件的类型
file *.lua (以.lua结尾的文件)
1: [root@master lianxi]# file *.lua2: 2.lua: ASCII text3: 3.lua: ASCII text4: 4.lua: ASCII text
数据文件类型(某些程序专用的数据格式)
1: [root@master lianxi]# file /var/log/lastlog2: /var/log/lastlog: dataPython脚本文件
1: [root@master lianxi]# file print.py2: print.py: a /bin/python script text executable
-z 参数,可以获取用gzip、zip压缩过的文件的类型
1: [root@master lianxi]# gzip print.py2: [root@master lianxi]# ls print.py.gz3: print.py.gz4: [root@master lianxi]# zip -r print.py.zip print.py.gz5: adding: print.py.gz (stored 0%)6: [root@master lianxi]# ls print.py.zip7: print.py.zip8: [root@master lianxi]# file print.py.*9: print.py.gz: gzip compressed data, was "print.py", from Unix, last modified: Fri Jun 14 20:48:14 201310: print.py.zip: Zip archive data, at least v1.0 to extract
-L 获取软链指向的文件的类型。默认是返回软链本身类型
1: [root@master lianxi]# ln -s test test.soft2: [root@master lianxi]# ls -l test*3: -rw-r--r-- 1 root root 25 Jun 14 20:09 test4: lrwxrwxrwx 1 root root 4 Jun 14 20:51 test.soft -> test5: [root@master lianxi]# file test.soft6: test.soft: symbolic link to `test'7: [root@master lianxi]# file -L test.soft8: test.soft: ASCII text9: [root@master lianxi]#
-f 获取一个文件名列表的所有文件的类型。1)注意路径是否正确 2)每行一个文件名
1: [root@master dir]# ls2: 1 2 33: [root@master dir]# ls > a4: [root@master dir]# cat a5: 16: 27: 38: a9: [root@master dir]# file -f a10: 1: ASCII text11: 2: ASCII text12: 3: empty13: a: ASCII text
特殊说明
1)在Window中,Windows系统对文件系统文件的标识是通过其扩展名。但是Windows上的程序自己也可以通过文件内容来判断文件内容类型
2)file 是通过读取文件头部内容,来获取文件类型,比如BASH脚本文件以#!/bin/bash 或Python脚本以#!/bin/python等,file读取其头部信息判断类型。
3)file可以辨识的文件类型很多,文本文件、脚本文件、数据文件、多媒体文件等。
总结
file命令,获取文件类型。
linux命令详解:file命令的更多相关文章
- (转)Linux命令详解-file
Linux命令详解-file 原文:https://www.cnblogs.com/Dodge/p/4278306.html file命令用来识别文件类型,也可用来辨别一些文件的编码格式.它是通过查看 ...
- linux shell 脚本攻略学习14--head命令详解,tail命令详解
当要查看上千行的大文件时,我们可不会用cat命令把整个文件内容给打印出来,相反,我们可能只需要看文件的一小部分地内容(例如文件的前十行和后十行),我们也有可能需要打印出来前n行或后n行,也有可能打印除 ...
- linux shell 脚本攻略学习13--file命令详解,diff命令详解
一.file命令详解 find命令可以通过查看文件内容来找出特定类型的文件,在UNIX/ Linux系统中,文件类型并不是由文件扩展名来决定的(windows中却正是这么做的),file命令的目的是从 ...
- linux shell 脚本攻略学习 -- head命令详解, tail命令详解
当要查看上千行的大文件时,我们可不会用cat命令把整个文件内容给打印出来,相反,我们可能只需要看文件的一小部分地内容(例如文件的前十行和后十行),我们也有可能需要打印出来前n行或后n行,也有可能打印除 ...
- [转]dd命令、cp命令详解+dd命令、cp命令对比 ---delong
出处:http://blog.csdn.net/sun_app/article/details/18263299 1.dd命令详解 1)中文man手册dd的解释 NAME dd - 转换和 ...
- Linux命令详解-file
file命令用来识别文件类型,也可用来辨别一些文件的编码格式.它是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的. 1.命令格式: file [ -bchikL ...
- linux命令大全之watch命令详解(监测命令运行结果)
watch是一个非常实用的命令,基本所有的Linux发行版都带有这个小工具,如同名字一样,watch可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行.在Linux下,watch是周期性的执行下个 ...
- linux系统find命令详解+xargs命令 、exec命令
find 作用:查找文件 1.name: 指定文件名 例子1. 找到以du结尾的文件 ╭─root@localhost.localdomain ~ ╰─➤ find / -name "*du ...
- linux命令详解:df命令
转:http://www.cnblogs.com/lwgdream/p/3413579.html 前言 df命令用来查看系统的space和inode使用情况,也是常用命令之一 使用说明 -a 显示所有 ...
- tar 命令详解 / xz 命令
]# tar [-cxtzjvfpPN] 文件与目录 ....参数:-c :建立一个压缩文件的参数指令(create 的意思):-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的 ...
随机推荐
- 关于在IE下面promise兼容的解决办法
下载es6-promise就可以解决这个问题 import ES6Promise from "es6-promise" if(!window.Promise) { console. ...
- Unity Microphone 录音时 检测声音大小
刚开始以为只取录音时的最后一个sample来判断音量大小,发现都检测不到. 后来搜索了一下,原来需要取一段sample来判断,有的是这一段取平均值作为音量大小.我这里是取出一段sample中的峰值(p ...
- hdu 2262 高斯消元求期望
Where is the canteen Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Ot ...
- comet realization with ajax&php
1.prepare front-end code, meta content-type cannot be ignored! as to the xhr, status should be 3 < ...
- vue.js源码学习分享(五)
//配置项var config = { /** * Option merge strategies (used in core/util/options)//选项合并策略 */ optionMerge ...
- 对于Redux的理解
在移动端项目,经常会在不同view中进行传递数据,事件.当事件比较少时,我们可以通过常规的事件流方法,注册,发布事件 进行响应等等.但是项目中一个事件多处响应时候,就会使程序变得相当复杂.在现在的Vu ...
- phpcms V9 广告模块中广告模板修改
广告模块模板位置 \phpcms\modules\poster\install\templates\*.html 我的需求: 去掉边框控制代码,是否显示边框我将在页面模板中设置,因些需要删除模板中的以 ...
- Centos7源码安装MySQL5.7
a.连接数据库报111 从一台linux远程连接另一台linux上的MySQL,出现ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx. ...
- Java中HashMap的初始容量设置
根据阿里巴巴Java开发手册上建议HashMap初始化时设置已知的大小,如果不超过16个,那么设置成默认大小16: 集合初始化时, 指定集合初始值大小. 说明: HashMap使用HashMap(in ...
- DevExpress的GridControl如何实现打印和打印预览 z
第一种方法: System.Drawing.Printing.PageSettings set_print_page = new System.Drawing.Printing ...