file命令
file命令用来用于辨识文件类型。
语法
file [-bcLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]
参数
- -b 列出辨识结果时,不显示文件名称。
- -c 详细显示指令执行过程,便于排错或分析程序执行的情形。
- -f<名称文件> 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
- -L 直接显示符号连接所指向的文件的类别。
- -m<魔法数字文件> 指定魔法数字文件。
- -v 显示版本信息。
- -z 尝试去解读压缩文件的内容。
- [文件或目录...] 要确定类型的文件列表,多个文件之间使用空格分开,可以使用shell通配符匹配多个文件。
例子
ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x2b879330250cf15f050064def87497a8b57fcf89, stripped
LSB:Linux标准化领域中事实的标准,制定了应用程序与运行环境之间的二进制接口
shared object:动态链接库
dynamically linked:动态链接
stripped:是否去掉符号表,降低内存
ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0xacb71d19329958485db0f5030135b5ab619b8e4d, not stripped
executable:可执行的
not stripped:不能完全去掉执行文件(elf文件)的符号表,否则无法加载运行。