亚游wwwag8com
你好,游客 登录 注册
背景:
阅读新闻

Linux xxd命令入门示例教程

[日期:2019-03-16] 来源:亚游wwwag8comLinux公社  作者:醉落红尘 [字体: ]

亚游wwwag8com,  一位接受采访的中国军事专家则否认了西方的猜测,他认为,从媒体公布的照片来看,该“航母模型”地上两层为水泥结构建筑,应该是一座造型别致的办公楼,其水泥楼顶并不适合进行舰载机起降训练。

  进入21世纪,西方国家的移动通信经过几年的爆炸性增长后,移动电话用户数逐渐到达极限。由表1的数据和图1的曲线可以十分清楚地看到自90年代末至3G前夕西欧移动通信的发展轨迹。欧洲在1994年前后GSM开始全面商用化,至1997年左右开始高速增长,直至进入2000年,增长开始大大减缓,此时欧洲移动电话普及率普遍达到了70%左右。2003年的前九个月,西欧移动用户增幅已降至仅为6%。显然,进入2000年,欧洲移动通信的发展己经进入饱和阶段,已经没有多大的进一步发展空间。与此同时,竞争的加剧、资费的下降使用户的ARPU值下降,这就使得电信运营商的总收入呈现下降趋势,电信业的发展开始遇到严重的危机。因此,话音业务进入饱和,电信收入停止增长,这是欧洲3G发展背景的第一个主要特征。显然,必须寻找新的增长来源,否则欧洲电信业便会陷入困境。多头溃不成军再遭血洗 数字货币一天抹600亿美元市值  空军在2010年正常招收选拔普通高中应届毕业生、普通高校本科在校二年级大学生、普通高校和军校本科应届毕业生的基础上,首次从空军部队大学生新兵中试行选拔飞行学员,计入今年选拔大学生计划。

你是否需要使用二进制或十六进制格式显示文件内容? 寻找可以执行此操作的命令行实用程序? 那,你很幸运,因为存在一个名为xxd的命令可以为你做到这一点。 在本教程中,我们将使用一些易于理解的示例来讨论xxd。 但在我们这样做之前,值得一提的是这里的所有例子都是在Ubuntu 18.04 LTS机器上测试过的。

xxd 命令可以将指定文件或标准输入以十六进制转储,也可以把十六进制转储转换成原来的二进制形式。

Linux xxd 命令

Linux中的xxd命令允许您创建一个hexdump甚至反过来。 以下是它的语法:

xxd [OPTIONS] [file]

以下是该工具的手册页的解释:

xxd创建给定文件或标准输入的十六进制转储。 它还可以将十六进制转储转换回其原始二进制形式。 与uuencode(1) 和 uudecode(1)一样,它允许以“mail-safe”ASCII表示传输二进制数据,但具有解码到标准输出的优点。 而且,它可以用于执行二进制文件修补。

下面是一些Q&A风格的例子,可以让您更好地了解xxd是如何工作的。

Q1. 如何使用xxd命令?

这很简单。 例如,假设您有一个文本文件'linuxidc.com.txt',其内容如下所示:

No.|Country|Yes/No
01|China|Y
02|US|Y
03|Australia|Y

04|India|N
05|Russia|Y
06|Japan|Y

07|Singapore|Y
08|South Korea|N
09|Finland|Y
10|Ireland|Y

以下是如何使用xxd将文件内容转换为十六进制:

linuxidc@linuxidc:~/www.linuxidc.com/Linux公社 -$ xxd linuxidc.com.txt

Linux xxd命令入门示例教程

输出如下:

00000000: 4e6f 2e7c 436f 756e 7472 797c 5965 732f  No.|Country|Yes/
00000010: 4e6f 0a30 317c 496e 6469 617c 590a 3032  No.01|India|Y.02
00000020: 7c55 537c 590a 3033 7c41 7573 7472 616c  |US|Y.03|Austral
00000030: 6961 7c59 0a0a 3034 7c43 6869 6e61 7c4e  ia|Y..04|China|N
00000040: 0a30 357c 5275 7373 6961 7c59 0a30 367c  .05|Russia|Y.06|
00000050: 4a61 7061 6e7c 590a 0a30 377c 5369 6e67  Japan|Y..07|Sing
00000060: 7061 6f72 657c 590a 3038 7c53 6f75 7468  paore|Y.08|South
00000070: 204b 6f72 6561 7c4e 0a30 397c 4669 6e61  Korea|N.09|Fina
00000080: 6c61 6e64 7c59 0a31 307c 4972 656c 616e  land|Y.10|Irelan
00000090: 647c 590a                                d|Y.

Q2. 如何用xxd跳过几行?

假设您不希望完整文件的hexdump。 相反,您希望该工具从特定行开始转换。 然后可以使用-s命令实现。

例如,如果您希望xxd从第3行开始生成十六进制转储,那么您可以告诉xxd如何执行此操作:

linuxidc@linuxidc:~/www.linuxidc.com/Linux公社 -$ xxd -s 0x30 linuxidc.com.txt

Linux xxd命令入门示例教程

这是产生的输出:

00000030: 6961 7c59 0a0a 3034 7c43 6869 6e61 7c4e  ia|Y..04|China|N
00000040: 0a30 357c 5275 7373 6961 7c59 0a30 367c  .05|Russia|Y.06|
00000050: 4a61 7061 6e7c 590a 0a30 377c 5369 6e67  Japan|Y..07|Sing
00000060: 7061 6f72 657c 590a 3038 7c53 6f75 7468  paore|Y.08|South
00000070: 204b 6f72 6561 7c4e 0a30 397c 4669 6e61  Korea|N.09|Fina
00000080: 6c61 6e64 7c59 0a31 307c 4972 656c 616e  land|Y.10|Irelan
00000090: 647c 590a                                d|Y.

因此,在这种情况下,您可以看到hexdump在第3行开始生成。

Q3. 如何将xxd输出限制为特定长度?

在上一节中,我们讨论了如何使xxd从特定点开始转换。 但也有一种方法可以将其转换限制在特定点。 这可以使用-l命令行选项完成。

例如,要确保xxd仅为linuxidc.com.txt的前三行创建转储,请按以下方式使用它:

linuxidc@linuxidc:~/www.linuxidc.com/Linux公社 -$ xxd -l 0x30 linuxidc.com.txt

这是它产生的输出:

00000000: 4e6f 2e7c 436f 756e 7472 797c 5965 732f  No.|Country|Yes/
00000010: 4e6f 0a30 317c 496e 6469 617c 590a 3032  No.01|India|Y.02
00000020: 7c55 537c 590a 3033 7c41 7573 7472 616c  |US|N.03|Austral

Q4. 如何设置列长?

如果希望xxd在输出中生成更少或更多的列,请使用-c选项并指定其中的列数。 这是使用此选项的示例命令:

linuxidc@linuxidc:~/www.linuxidc.com/Linux公社 -$ xxd -c 5 linuxidc.com.txt

Linux xxd命令入门示例教程

输出如下:

00000000: 4e6f 2e7c 43  No.|C
00000005: 6f75 6e74 72  ountr
0000000a: 797c 5965 73  y|Yes
0000000f: 2f4e 6f0a 30  /No.0
00000014: 317c 496e 64  1|Ind
00000019: 6961 7c59 0a  ia|Y.
0000001e: 3032 7c55 53  02|US
00000023: 7c59 0a30 33  |Y.03
00000028: 7c41 7573 74  |Aust
0000002d: 7261 6c69 61  ralia
00000032: 7c59 0a0a 30  |Y..0
00000037: 347c 4368 69  4|Chi
0000003c: 6e61 7c4e 0a  na|N.
00000041: 3035 7c52 75  05|Ru
00000046: 7373 6961 7c  ssia|
0000004b: 590a 3036 7c  Y.06|
00000050: 4a61 7061 6e  Japan
00000055: 7c59 0a0a 30  |Y..0
0000005a: 377c 5369 6e  7|Sin
0000005f: 6770 616f 72  gpaor
00000064: 657c 590a 30  e|Y.0
00000069: 387c 536f 75  8|Sou
0000006e: 7468 204b 6f  th Ko
00000073: 7265 617c 4e  rea|N
00000078: 0a30 397c 46  .09|F
0000007d: 696e 616c 61  inala
00000082: 6e64 7c59 0a  nd|Y.
00000087: 3130 7c49 72  10|Ir
0000008c: 656c 616e 64  eland
00000091: 7c59 0a      |Y.

所以你可以看到输出中只产生了5列。

Q5. 如何让xxd产生二进制转储?

是的,这也是可能的。 -b命令行选项使xxd以二进制数字生成转储。 以下是该手册页中有关此工具的说明:

-b |-Bits

切换到位(二进制数字)转储,而不是hexdump。 此选项将八位字节写为八位“1”和“0”

正常的十六进制转储。 每行前面都有一个十六进制的行号,后跟一个ascii(或ebcdic表示。命令行开关-r, -p, -i不适用于此模式。

这是一个例子:

linuxidc@linuxidc:~/www.linuxidc.com/Linux公社 -$ xxd -b linuxidc.com.txt

Linux xxd命令入门示例教程

总结

所以你可以看到,如果你处理十六进制和二进制文件内容,xxd命令很有用。 在本教程中,我们刚刚讨论了xxd提供的一些基本选项。 完成练习后,请访问该工具的手册页以了解有关它的更多信息。

Linux公社的RSS地址/wwwd35clinuxidcd35ccom/rssFeed.aspx

本文永久更新链接地址/wwwd35clinuxidcd35ccom/Linux/2019-03/157513.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
白领瘦身注意!5大错误坐姿肚子瘦不下来 海南环保厅长回应“人满为患”:游客不是多是不够 人大代表孟海建议:从通天河干流调水入柴达木盆地 丈母娘不满女婿不干家务 激动之下拿起菜刀要自杀 去年5家上市系网贷平台净利超亿元 亏损仍为行业常态 人大党委书记靳诺党报撰文:坚持办学正确政治方向 把保护主义怪兽关进笼子 还国际贸易环境清朗天空 英国电信CEO:80%的工作岗位未来“很可能”会消失 日美航母再现身南海秀肌肉 日媒:牵制中国建设岛礁 法拉利官方声明:盼受伤机械师早日康复重返赛道 摩根大通前高管:银行很快会进入加密货币市场 加西亚:盼人和延续不败势头 巴索戈缺战但仍有隐忧
人民日报评个税改革:要让群众收入更有分量 韩欢迎朝归还美军遗骸:对建立互信有重大意义 四川女孩大马失联13天:疑去看男友 家人求助使馆 郭艾伦:我没去想什么冠军点 争取到最好的结果 粤媒:恒大务实应买大牌外援 金英权离队不可避免 小伙徒步西岭雪山被困 吃竹笋喝泉水熬5天后获救 拼多多IPO超募20倍 将按定价区间高值19元定价 美军三角洲与绿色贝雷帽两支特种部队究竟有何区别 港澳办主任:惠台31条与中央支持港澳方针政策一致 雷诺领队:小塞恩斯的到来让霍肯博格“焦虑” 意大利大选现僵局 前总理伦齐宣布辞去民主党职务 [新浪彩票]25日竞彩异常指数:图卢兹客场不败
大马前总理被抄家:查出284箱名牌包72袋首饰现金 防总:未来十天受台风影响 长江流域有强降雨 壳牌喜力F4揭幕站首回合:玄锋车队包揽冠亚军 侠客岛:一位传奇色彩的政治家 92岁再度出山 中国金洋:恒指有望上试31500点 安倍今赴美会晤特朗普 新建框架劝说美国重返TPP 高盛:特斯拉两年内需融资逾100亿美元 方能维持运营 天津航空A320客机遭雹击 雷达罩凹陷风挡被击裂(图) 外媒:朝纪念朝鲜战争胜利65周年 并向志愿军致敬 网上高价办加急泰国签?泰大使:到使馆办仅3天 铜价 未来存在上涨预期 比特币一周跌超三成 监管将处置境内外交易平台网站 女子和老公闹离婚期间 带人抢走儿子藏2年 亚游wwwag8com