hexdump—Linux系统的二进制文件查看工具
hexdump
无参:
相当于 hexdump -x
0000000 457f 464c 0102 0001 0000 0000 0000 0000
0000010 0002 003e 0001 0000 0410 0040 0000 0000
-b 每一字节以八进制显示,一行共16个字节,一行开始以十六进制显示偏移值;
0000000 177 105 114 106 002 001 001 000 000 000 000 000 000 000 000 000
-c 每一字节以ASCII字符显示,其余同上;
0000000 177 E L F 002 001 001 \0 \0 \0 \0 \0 \0 \0 \0 \0
-C 每一字节以16进制显示,一行共16个字节,尾部附加16个相应的ASCII字符;
00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
-n 只解释指定长度字节
单位:默认十进制,0x或0X开头则为16进制,0开头则为8进制
默认为字节,b则为512字节,k则为1024字节,m则为1048576字节
-d 双字节十进制显示
-o 双字节八进制显示
-v 去除中间显示的“*”字符
-x 双字节十六进制显示
当以上的参数不满足要求时,那么需要加入格式化参数:
hexdump –e ‘”%06_ax”16/1”%02X”’
解释:
-e 格式化参数
%06_ax 0:用前导零而不是空格填充显示字段宽度
6:显示字段宽度最小值为6
_ax:偏移量以16进制表示,输入文件的偏移量累积计算
16/1 格式化字符串运用16次,每次格式化字符串只运用到一个字节
%02X 0:用前导零而不是空格填充字段宽度
2:显示字段宽度最小值为2
X:默认操作字节数是4,但是也可以指定为1、2、4,并以十六进制显示
\n 换行
例:
"%06.6_ao " 12/1 "%3_u "
"\t\t" "%_p "
"\n"
输入文件偏移量累积计算;以八进制显示文件偏移量,最小显示宽度6,最大显示宽度6
以%3_u字符串格式处理12次,每次处理1个字节;接着显示\t\t,以%_p字符串格式处理一次,每次处理1个字节;接着换行。
echo hello | hexdump -v -e '/1 "%02X "' ; echo
-v不显实*
-e 格式化字符串
以%02X格式串处理1次,一次处理1个字节
echo hello | hexdump -e '8/1 "%02X ""\t"" "' -e '8/1 "%c""\n"'
以%02X格式串处理8次,一次处理1个字节,添加\t,接着把处理过的文件再处按%c格式处理8次,一次处理1个字节,添加换行;
写了个脚本,方便查阅ASCII字符表
#! /bin/sh
ASCII="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
echo $ASCII | hexdump -v -e '"%02_ad "'\
-e '1/1 "%1c "'\
-e '1/1 "hex=%02X "'\
-e '1/1 "dec=%3d "'\
-e '1/1 "oct=%03o\n"'
hexdump—Linux系统的二进制文件查看工具的更多相关文章
- hexdump——Linux系统的二进制文件查看工具
hexdump是Linux下的一个二进制文件查看工具,可以将二进制文件转换为ASCII.10进制.16进制或8进制进行查看. 首先我们准备一个测试用的文件test,十六进制如下: 00 01 02 0 ...
- [转]linux 系统监控、诊断工具之 IO wait
1.问题: 最近在做日志的实时同步,上线之前是做过单份线上日志压力测试的,消息队列和客户端.本机都没问题,但是没想到上了第二份日志之后,问题来了: 集群中的某台机器 top 看到负载巨高,集群中的机器 ...
- 在 Linux 系统下使用 PhotoRec 工具来恢复已删除或丢失的文件
PhotoRec – Recover Deleted or Lost Files in Linux 在 Linux 系统下使用 PhotoRec 工具来恢复已删除或丢失的文件 当你在系统中有意或无意地 ...
- Linux系统下如何查看物理内存占用率
Linux系统下如何查看物理内存占用率 Linux下看内存和CPU使用率一般都用top命令,但是实际在用的时候,用top查看出来的内存占用率都非常高,如:Mem: 4086496k total, ...
- Linux 系统中如何查看日志 (常用命令) tail -f
Linux 系统中如何查看日志 (常用命令) tail -f 日志文件 日 志 文 件 说 明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日 ...
- kail linux 系统下利用metaspolit工具渗透win7电脑
注:只是测试,不可干违法的事. 一.metaspolit工具的介绍 1.1.metaspolit 是一款开源安全漏洞检测工具,附带数百个已知的软件漏洞,并保持频繁更新.被安全社区冠以“可以黑掉整个宇 ...
- 浅谈Linux系统中如何查看进程
进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系统资源.一般来说,Linux系统会在进程之间共享程序代码和系统函数库,所以在任何时刻内存中都只有代码的一份拷贝. 1,ps命令 作用:p ...
- 浅谈Linux系统中如何查看进程 ——ps,pstree,top,w,全解
进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系统资源.一般来说,Linux系统会在进程之间共享程序代码和系统函数库,所以在任何时刻内存中都只有代码的一份拷贝. 1,ps命令 作用:p ...
- linux系统top命令查看系统状态
Linux系统可以通过top命令查看系统的CPU.内存.运行时间.交换分区.执行的线程等信息.通过top命令可以有效的发现系统的缺陷出在哪里.是内存不够.CPU处理能力不够.IO读写过高. 使用SSH ...
随机推荐
- iOS 开发UI篇 -- 懒加载学习
1. 懒加载基本 懒加载--也称为延迟加载,即在需要的时候才加载( 效率低,占用内存小).所谓懒加载,写的是其get方法. 注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实 ...
- SXT_项目
30. svn服务器运行方式: svnserve:自己做实验的时候用. svn&apache结合起来用.[常用的] 29. EXTJs not Jquery[根据项目组需求] 28. tags ...
- 【Leetcode】【Medium】Pow(x, n)
Implement pow(x, n). 解题思路: 求浮点数的幂次方,注意可能为负数次幂: 可以使用二分搜索的思想,当n为偶数时,x^n = x^(n/2) * x^(n/2),因此只需要求得一半的 ...
- C++11 并发指南六(atomic 类型详解一 atomic_flag 介绍)
C++11 并发指南已经写了 5 章,前五章重点介绍了多线程编程方面的内容,但大部分内容只涉及多线程.互斥量.条件变量和异步编程相关的 API,C++11 程序员完全可以不必知道这些 API 在底层是 ...
- .net 架构师/经理招聘,长期有效
岗位职责: 1.参与项目的需求分析和业务评审 2.负责项目的技术架构: 3.负责指导开发小组完成开发以及单元测试: 4.负责解决开发人员的技术问题,并对开发人员的代码进行Review. 任职要求: 1 ...
- DDD领域驱动设计之运用层代码
1.DDD领域驱动设计实践篇之如何提取模型 2.DDD领域驱动设计之聚合.实体.值对象 3.DDD领域驱动设计之领域基础设施层 4.DDD领域驱动设计之领域服务 5.整体DEMO代码 什么是运用层,说 ...
- Linux 进程
Linux 进程 在用户空间,进程是由进程标识符(PID)表示的.从用户的角度来看,一个 PID 是一个数字值,可惟一标识一个进程.一个 PID 在进程的整个生命期间不会更改,但 PID 可以在进程销 ...
- Ubuntu SVN客户端安装
查看系统版本: uname -a (Linux查看版本当前操作系统内核信息) cat /proc/version (Linux查看当前操作系统版本信息) 1.首先需要安装Ubuntu SVN.Ubun ...
- 要杀死一切APP,微信应用号是不是被神化了?
昨晚打开微信朋友圈,关于微信“小程序”发布内测邀请函的消息漫天飞舞.今天一早翻阅新闻,各大媒体也纷纷表示看好微信应用号,有些媒体甚至扬言微信应用号将杀死一切APP,大量的APP都将会被用户卸载.不可否 ...
- bzoj 3517: 翻硬币
3517: 翻硬币 Time Limit: 1 Sec Memory Limit: 128 MB Description 有一个n行n列的棋盘,每个格子上都有一个硬币,且n为偶数.每个硬币要么是正面 ...