Ubuntu Linux 查看、编辑、比较二进制文件
查看二进制有以下几种方法:
方法一:hexdump
apt-get install libdata-hexdumper-perl
安装好之后就可以直接hexdump your_binary_file
也可以直接使用hd命令来代替hexdump
如果想要慢慢看 : hd your_binary_file | more
方法二:
Vim 可以用来查看和编辑二进制文件
vim -b egenea-base.ko 加上-b参数,以二进制打开
然后输入命令 :%!xxd -g 1 切换到十六进制模式显示
0000000: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00  .ELF............
0000010: 01 00 03 00 01 00 00 00 00 00 00 00 00 00 00 00  ................
0000020: 2c a7 03 00 00 00 00 00 34 00 00 00 00 00 28 00  ,.......4.....(.
0000030: 10 00 0d 00 55 89 e5 51 51 8b 45 08 85 c0 74 11  ....U..QQ.E...t.
0000040: 52 52 50 a1 00 00 00 00 50 e8 fc ff ff ff 83 c4  RRP.....P.......
0000050: 10 89 ec 5d c3 8d 76 00 55 89 e5 50 50 b8 01 00  ...]..v.U..PP...
0000060: 00 00 8b 55 08 39 d0 73 09 8d 76 00 01 c0 39 d0  ...U.9.s..v...9.
0000070: 72 fa 8b 55 04 51 52 50 a1 00 00 00 00 50 e8 fc  r..U.QRP.....P..
0000080: ff ff ff 89 ec 5d c3 90 55 89 e5 50 50 b8 01 00  .....]..U..PP...
0000090: 00 00 8b 55 08 39 d0 73 09 8d 76 00 01 c0 39 d0  ...U.9.s..v...9.
00000a0: 72 fa 8b 4d 04 8b 55 10 51 52 50 a1 00 00 00 00  r..M..U.QRP.....
00000b0: 50 e8 fc ff ff ff 89 ec 5d c3 89 f6 55 89 e5 57  P.......]...U..W
00000c0: 56 53 81 ec 8c 00 00 00 8b 5d 1c 8b 45 10 85 db  VS.......]..E...
00000d0: 75 7e 85 c0 75 71 50 8b 45 04 50 a1 00 00 00 00  u~..uqP.E.P.....
00000e0: 68 8c 00 00 00 50 e8 fc ff ff ff 83 c4 10 89 c2  h....P.........
然后就可以像修改文本文件一样修改16进制的字符,可以用 / 查找指定的偏移等等。修改右边的ascii字符应该无效。修改完成后再执行:%!xxd -r 切换会二进制模式,然后再 :wq 保存退出就可以了。在这vim里面这样编辑还是很方便的,注意一定要:%!xxd -r切换回来之后在保存才行。
方法三. linux 上面也有十六进制编辑的GUI工具
jeex (http://www.hds619.net/jeex.php)
ghex
bless (Bless is a Hex Editor for Gtk# http://home.gna.org/bless/)
UltraEdit
二 比较两个二进制文件,可以使用vimdiff。
vimdiff应该还是比较好用的,类似windows 平台的windiff
vim -bd base.ko base2.ko
打开后就可以在两个窗口里面显示两个文件
ctrl + W +L  把输入焦点切换到右边的窗口,激活右边的窗口后输入的命令就是针对右窗口了
:%!xxd -g 1  切换成十六进制的一个字节的模式
ctrl + W +H  把输入焦点切换到左边的窗口 
:%!xxd -g 1 
] + c  查找上一个不同点
[ + c  查找下一个不同点
 0012930: 89 df 68 77 01 00 00 e8 fc ff|  0012930: 89 df 68 78 01 00 00 e8 fc f
转自:http://blog.csdn.net/chenqiai0/article/details/8537832
Ubuntu Linux 查看、编辑、比较二进制文件的更多相关文章
- Ubuntu Linux markdown编辑工具 typora 安装
		Typora简介 Typora是一款轻便简洁的Markdown编辑器,支持即时渲染技术,这也是与其他Markdown编辑器最显著的区别.即时渲染使得你写Markdown就想是写Word文档一样流畅自如 ... 
- ubuntu linux查看cpu信息
		$ cat /proc/cpuinfo CPU核心数量 $ grep -c processor /proc/cpuinfo 
- 用VIM查看编辑二进制文件
		用VIM查看编辑二进制文件 vim可以很方便地编辑二进制文件,个人认为它比emacs的二进制编辑方式更好用.vim中二进制文件的编辑是先通过外部程序xxd来把文件dump成其二进制的文本形式,然后就可 ... 
- Linux 创建/编辑/查看 文件/文件夹的命令汇总
		Linux 创建/编辑/查看 文件/文件夹的命令汇总 Linux 创建文件的命令Linux,编辑文件的命令Linux 查看文件的命令,touch,vim,vi,gedit,cat,ls -a, ls ... 
- 手动配置Ubuntu Linux系列3-缺省网关和主机名
		上一篇讲到[原创]手动配置Ubuntu Linux的DHCP客户端,这里再说一下配置静态IP地址的方法. 仍然是编辑 interfaces文件. $ sudo vi /etc/network/ ... 
- linux查看系统的硬件信息
		linux查看系统的硬件信息,并不像windows那么直观,这里我罗列了查看系统信息的实用命令,并做了分类,实例解说. cpu lscpu命令,查看的是cpu的统计信息. blue@blue-pc:~ ... 
- Ubuntu Linux下设置IP的配置命令
		Ubuntu Linux下设置IP的配置命令 今天装了Ubuntu,但是发现不能上网,开始排查问题: 1.首先确定网络连接是否正确,所用的网线是否可以正常工作 2.查看网卡是否能正常工作,检测的方法如 ... 
- ubuntu linux  adb devices no permissions解决办法
		最近在调试安卓手机时老是失败,问题如下所示 han@ubuntu:~/project/zero_app$ adb devices List of devices attached 664768297c ... 
- Linux查看当前使用的网卡 以及 查看某进程使用的网络带宽情况  以及  端口占用的情况
		一:Linux查看当前使用的网卡 ifconfig命令可以查看当前linux 系统有多少个网卡. [app@p2-app2 ~]$ ifconfig br-2e5b046a02d5: ... 
随机推荐
- SSO单点登录统一身份认证系统
			什么是单点登录 简单点说就是公司有A,B两个系统,我登录了A系统之后再跳转到B系统可以直接访问,而不需要再次登录B系统. 几种常见的单点登录实现方式 在讲解单点登录之前先讲解几个基本的概念: Cook ... 
- socket之UDP协议,并发编程介绍,操作系统发展史
			socket之UDP协议 1.UDP协议 UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection 参考 ... 
- 闲记Windows 取证艺术
			是不是很好奇,别人能够在你电脑上查看你运行程序历史,文档使用痕迹,浏览器浏览历史种种历史痕迹,没错,通过简单的系统了解以及配合相对应的工具,这一切就是这么的简单,看起来很高大上的操作,其实是 ... 
- Adobe Acrobat XI 中文版激活方法
			Adobe Acrobat XI不仅只是出色的PDF编辑.转换软件.此次更新深度整合了Microsoft Office套件,实现了PDF与Word.Excel以及PowerPoint等文档间的无缝相互 ... 
- 阿里云Open API自动化脚本—ECS公网IP转化弹性公网IP
			1.OpenAPI Explorer 记录一下使用阿里云 Open API 自动化/脚本化 “ECS 公网 IP 转化弹性公网 IP”的实现 全过程.原博客地址:https://www.markedi ... 
- Configure脚本支持说明
			在Linux上安装Nginx需要执行Configure脚本,该脚本需要做一些参数说明: 选项 说明 --prefix=<path> 指定Nginx软件的安装路径,若不指定默认安装在/usr ... 
- Django之ORM操作.md
			1.ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人 ... 
- Ubuntu中配置Python虚拟环境Virtualenv
			Ubuntu版本为18.04 Virtualenv介绍 在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4.所有第三方的包都会被pip安装到Python3的site-pac ... 
- python中的并发执行
			一. Gevent实例 import gevent import requests from gevent import monkey # socket发送请求以后就会进入等待状态,gevent更改了 ... 
- Java new运算符解析
			1.创建数组时,不使用new操作符 Person [] a; a[0]=new Person(); //Error:variable a might not have been initialized ... 
