前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python hexdump_hexdump用法[通俗易懂]

python hexdump_hexdump用法[通俗易懂]

作者头像
全栈程序员站长
发布2022-11-08 18:54:27
6190
发布2022-11-08 18:54:27
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

可用参数

[-bcCdovx] [-e format_string] [-f format_file] [-n length] [-s skip] file …

参数含义:

-b 单字节八进制显示,十六进制显示偏移量,每行显示16个字符,每字符用三位显示,不足补零,列间以空格分隔

-c 单字节字符显示,十六进制显示偏移量,每行显示16个字符,每字符三位显示,不足补空格,列间以空格分隔

-C 标准十六进制+ascii码显示,十六进制显示偏移量,每行16个字符,每字符两位显示,不足补0,结尾显示当前16位数据的ascii码值,以|框住

-d 双字节十进制显示,十六进制显示偏移量,每行8组(16字节)每组5位,不足补零,列间以空格分隔,以无符号10进制数值显示

-e format_string 以指定的格式显示

-f format_file 根据format file中的格式进行输出,忽略formatfile中空行及以#开始的行

-n length 只显示length个字节的数据

-o 双字节八进制显示。十六进制显示偏移量,每行8组数据,每数据占两字节,6列,不足补零,以空格分隔

-s offset 跳过从开始的offset个字节,默认输入十进制,以0x或0X开始按16进制处理,否则如以0开始按八进制处理,如果以b/k/m结尾,则原数值乘以512/1024/1048576

-v 显示所有数据,如果不包含这一选项,对于同上一行完全相同的数据,hexdump会以*代替显示

-x 两位十六进制显示.十六进制显示偏移量,每行8组数据,每数据占两字节,4列,不足补零,以空格分隔

-e 指定格式字符串,格式字符串包含在一对单引号中,格式字符串形如: ‘a/b “format1” “format2″‘

每个格式字符串由三部分组成,每个由空格分隔,第一个形如a/b,b表示对每b个输入字节应用format1格式,a表示对每a个输入字节应用format2格式,一般a>b,且b只能为1,2,4,另外a可以省略,省略则a=1。

format1和format2中可以使用类似printf的格式字符串,如: %02d:两位十进制 %03x:三位十六进制 %02o:两位八进制 %c:单个字符等

例子:

echo hello | hexdump -e ‘8/1 “%04X “‘

输出:

0068 0065 006C 006C 006F 000A

echo hello | hexdump -e ‘8/1 “%02X “”\t”” “‘ -e ‘8/1 “%c””\n”‘

输出:

68 65 6C 6C 6F 0A hello

加上”x”前缀:

echo hello | hexdump -v -e ‘”x” 1/1 “%02X” ” “‘

输出:

x68 x65 x6C x6C x6F x0A

还有一些特殊的用法:

%_ad:标记下一个输出字节的序号,用十进制表示

%_ax:标记下一个输出字节的序号,用十六进制表示

%_ao:标记下一个输出字节的序号,用八进制表示

%_p:对不能以常规字符显示的用.代替 同一行如果要显示多个格式字符串,则可以跟多个-e选项

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190873.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月21日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档