使用file命令查看动态链接库, 得到如下结果:

#/usr/libx32$ file ../lib32/libgomp.so.1.0.0

../lib32/libgomp.so.1.0.0: ELF 32-bit LSB  shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=57ec5c404cd4f781ac341332437a6960784e4581, stripped

#:/usr/libx32$ file ../libx32/libgcc_s.so.1

../libx32/libgcc_s.so.1:ELF 32-bitLSB  shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4713f15844e2b3e13f741bd5acef9aaab24cff03, stripped

其中比较让我困惑的红字部分,

ELF 32-bit表示这个elf文件是elf32的, ELF64-bit表示elf文件是elf64的

typedef struct elf32_hdr {

unsigned char e_ident[EI_NIDENT];

Elf32_Half e_type;

Elf32_Half e_machine;

Elf32_Word e_version;

Elf32_Addr e_entry; /* Entry point */

Elf32_Off e_phoff;

Elf32_Off e_shoff;

Elf32_Word e_flags;

Elf32_Half e_ehsize;

Elf32_Half e_phentsize;

Elf32_Half e_phnum;

Elf32_Half e_shentsize;

Elf32_Half e_shnum;

Elf32_Half e_shstrndx;

} Elf32_Ehdr;

typedef struct elf64_hdr {

unsigned char e_ident[16]; /* ELF "magic number" */

Elf64_Half e_type;

Elf64_Half e_machine;

Elf64_Word e_version;

Elf64_Addr e_entry; /* Entry point virtual address */

Elf64_Off e_phoff; /* Program header table file offset */

Elf64_Off e_shoff; /* Section header table file offset */

Elf64_Word e_flags;

Elf64_Half e_ehsize;

Elf64_Half e_phentsize;

Elf64_Half e_phnum;

Elf64_Half e_shentsize;

Elf64_Half e_shnum;

Elf64_Half e_shstrndx;

} Elf64_Ehdr;

对于elf32和elf64头,二者的前16字节是Magic, Magic第五个字节定义了elf文件的格式.

Intel 80386和x86-64则定义了目标机器的类型,也就是目标机器的指令集

linux shell 判断ELF文件,linux file命令查看elf文件信息相关推荐

  1. Linux常用命令(本篇包括,Linux目录结构介绍、Linux Shell介绍、9个常见命令介绍、文件的概念、文件的操作(20个)、目录的操作、文件和目录的权限、文件压缩及解压缩)

    Linux常用命令(本篇包括,Linux目录结构介绍.Linux Shell介绍.9个常见命令介绍.文件的概念.文件的操作(20个).目录的操作.文件和目录的权限.文件压缩及解压缩)         ...

  2. 利用Linux中file命令查看音频文件的采样率

    有时,在处理音频文件时,需要知道该音频文件的采样率,那如何查看呢? 可以通过Linux中的file命令来查看音频文件的采样率.具体如下: $ file xxxx.wav 实例: $ file Data ...

  3. linux shell判断当前目录下的文件或目录

    linux shell判断当前目录下的文件或目录 #!bin/sh for file in ./* doif test -f $filethenecho $file 是文件elseecho $file ...

  4. Linux Shell脚本入门--wget 命令用法详解

    Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...

  5. Linux Shell 判断块设备节点是否存在

    /************************************************************************** Linux Shell 判断块设备节点是否存在* ...

  6. linux快捷命令补齐,Linux Shell简介——自动补齐/命令行的历史记录/编辑命令行/可用的 Shell 快捷方式.doc...

    Linux Shell简介--自动补齐/命令行的历史记录/编辑命令行/可用的 Shell 快捷方式 Unix (及后继者 Linux)在命令行下面诞生,因此,Unix 中的命令行有许多非常实用的功能. ...

  7. 红旗linux shell方式下配置声卡的命令是:,‘红旗杯’linux大赛——基础知识2

    1. 在chmod 命令中,-v参数的作用是: A. 详细说明组的变化 *B. 详细说明权限的变化 C. 改变本目录及其所有子目录的文件的权限 D. 在文件的权限确实改变时进行详细的说明 2. 为了显 ...

  8. 红旗linux shell方式下配置声卡的命令是:,linux基础知识1

    1. 在chmod 命令中,-v参数的作用是: A. 详细说明组的变化 *B. 详细说明权限的变化 C. 改变本目录及其所有子目录的文件的权限 D. 在文件的权限确实改变时进行详细的说明 2. 为了显 ...

  9. linux more 乱码,Linux 中vim/more/cat/tail/head 命令查看文件显示乱码

    Linux 中 vim/more/cat/tail/head 命令查看文件显示乱码,乱码原因:Linux默认字符集码为 UTF-8 ,有些其它字库未安装 解决方法: 1)临时解决方法将当前文件强制使用 ...

  10. linux zcat 使用方法,使用linux的zcat命令查看压缩文件的内容

    服务器 本篇文章和大家了解一下使用linux的zcat命令查看压缩文件的内容.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. zcat命令用于不真正解压缩文件,就能显示压缩包中文件的 ...

最新文章

  1. HTML的标签描述1
  2. 详解使用VueJS开发项目中的兼容问题
  3. HALCON示例程序color_fuses_lut_trans.hdev通过颜色对保险丝进行分类
  4. linux只能用一半的内存,linux可用内存足够为什么还用swap
  5. 正则邮箱_正则表达式再进级
  6. SQL注入漏洞解决心得
  7. JVM 字节码指令手册 - 查看 Java 字节码
  8. 查询硬盘序列号(serialNumber),系统安装日期等
  9. CAD的.net开发
  10. linux运行speex,linux 用speex库压缩音频
  11. Linux Ubuntu18系统下最简单开机自启动程序方法 | 九七的Linux
  12. HDLBits 答案之Exams/ece241 2014 q7b
  13. html调用wmp,web页面中嵌入window media player,支持IE和Chrome
  14. C语言:0, '0', '\0', NULL 区别
  15. Delta tuning(只抓核心)
  16. 在线生成二维码 case
  17. VISI 21五金冲压连续模具设计视频教程 SDK21教程
  18. Android Google Maps API教程-入门
  19. 单片机STC89C52
  20. 2020秋招——XX校招笔试编程题:回文串

热门文章

  1. ChIPQC——对ChIP-seq的质量评估
  2. 利用Excel进行简单线性规划求解
  3. asp.net网上书店系统
  4. 在php中使用for、while、do-while循环实现从1加到100
  5. python代码颜色搭配_python配色_python 配色_python配色方案 - 云+社区 - 腾讯云
  6. 剖析 TCP协议内部结构
  7. fork函数结果分析
  8. java基础-软件简述
  9. c语言调用api函数
  10. 机器人学导论——笔记(1)