首页 / 科技百科

如何打开二进制文件

2025-01-23 08:25科技百科
1Linux环境xxd命令如何编辑/修改二进制文件

xxd工具虽然不能直接修改二进制文件,但xxd -r参数可把Hexdump文本转成二进制内容。convert (or patch) hexdump into binary.

因此,对于要修改的二进制文件,可以先转为Hexdump文本,再通过xxd -r命令把Hexdump文本转为二进制文件。

[mycc@wen*z:~]$ xxd file1.binary0000000: 1234 0001 0000 0000 2022 0103 9900 000c .4...... ......0000010: 22f9 0100 0041 3106 1992 6741 3106 1992 ....A1...gA1...0000020: 6700 00f7 0100 001f 0933 0900 0000 0310 g........3......0000030: 4800 0000 7156 0559 71fb 0102 2c01 0130 H...qV.Yq...,..0[mycc@wen*z:~]$ xxd file1.binary file1.txt [mycc@wen*z:~]$ vi file1.txt [mycc@wen*z:~]$ cat file1.txt 0000000: abcd 0001 0000 0000 2022 0103 9900 000c .4...... ......0000010: 22f9 0100 0041 3106 1992 6741 3106 1992 ....A1...gA1...0000020: 6700 00f7 0100 001f 0933 0900 0000 0310 g........3......0000030: 4800 0000 7156 0559 71fb 0102 2c01 0130 H...qV.Yq...,..0[mycc@wen*z:~]$ xxd -r file1.txt file1.binary[mycc@wen*z:~]$ xxd file1.binary0000000: abcd 0001 0000 0000 2022 0103 9900 000c ........ ......0000010: 22f9 0100 0041 3106 1992 6741 3106 1992 ....A1...gA1...0000020: 6700 00f7 0100 001f 0933 0900 0000 0310 g........3......0000030: 4800 0000 7156 0559 71fb 0102 2c01 0130 H...qV.Yq...,..0

xxd修改二进制文件示例

2用xxd查看二进制文件

2.1查看二进制文件

[mycc@wen*z:~]$ xxd file1.binary0000000: 1234 0001 0000 0000 2022 0103 9900 000c .4...... ......0000010: 22f9 0100 0041 3106 1992 6741 3106 1992 ....A1...gA1...0000020: 6700 00f7 0100 001f 0933 0900 0000 0310 g........3......0000030: 4800 0000 7156 0559 71fb 0102 2c01 0130 H...qV.Yq...,..0

2.2.查看指定字节数量内容:-l参数表示长度

xxd -l 32 file1.binary 查看前32个字节

[mycc@wen*z:~]$ xxd -l 32 file1.binary 0000000: 1234 0001 0000 0000 2022 0103 9900 000c .4...... ......0000010: 22f9 0100 0041 3106 1992 6741 3106 1992 ....A1...gA1...

2.3查看指定偏移位置后的内容:-s参数表示偏移位置(从0开始),当值为负数时为从尾向前数偏移

xxd -s 16 file1.binary 查看从16字节开始的内容

[mycc@wen*z:~]$ xxd -s 16 file1.binary 0000010: 22f9 0100 0041 3106 1992 6741 3106 1992 ....A1...gA1...0000020: 6700 00f7 0100 001f 0933 0900 0000 0310 g........3......0000030: 4800 0000 7156 0559 71fb 0102 2c01 0130 H...qV.Yq...,..0

xxd -s -16查看最后16字节内容

[mycc@wen*z:~]$ xxd -s -16 file1.binary 0000030: 4800 0000 7156 0559 71fb 0102 2c01 0130 H...qV.Yq...,..0

2.4 限定每行输出的字节数:-c 参数,限定每行字节数量

xxd -c 8 file1.binary查看内容,每行8字节

[mycc@wen*z:~]$ xxd -c 8 file1.binary 0000000: 1234 0001 0000 0000 .4......0000008: 2022 0103 9900 000c ......0000010: 22f9 0100 0041 3106 ....A1.0000018: 1992 6741 3106 1992 ..gA1...0000020: 6700 00f7 0100 001f g.......0000028: 0933 0900 0000 0310 .3......0000030: 4800 0000 7156 0559 H...qV.Y0000038: 71fb 0102 2c01 0130 q...,..0

2.5以纯Hex字符输出:-p参数表示无空格,无序号,无ascii格式部分

xxd -p file.binary

[mycc@wen*z:~]$ xxd -p file1.binary 1234000100000000202201039900000c22f90100004131061992674131061992670000f70100001f0933090000000310480000007156055971fb01022c010130

2.6将二进制文件内容转为c语言内容:-i参数

xxd -i file1.binary将二进制文件内容转为c数组,这在某些测试过程中是有用的

[mycc@wen*z:~]$ xxd -i file1.binaryunsigned char file1_binary[] = { 0x12, 0x34, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x20, 0x22, 0x01, 0x03, 0x99, 0x00, 0x00, 0x0c, 0x22, 0xf9, 0x01, 0x00, 0x00, 0x41, 0x31, 0x06, 0x19, 0x92, 0x67, 0x41, 0x31, 0x06, 0x19, 0x92, 0x67, 0x00, 0x00, 0xf7, 0x01, 0x00, 0x00, 0x1f, 0x09, 0x33, 0x09, 0x00, 0x00, 0x00, 0x03, 0x10, 0x48, 0x00, 0x00, 0x00, 0x71, 0x56, 0x05, 0x59, 0x71, 0xfb, 0x01, 0x02, 0x2c, 0x01, 0x01, 0x30};unsigned int file1_binary_len = 64;

2.7综合利用上面参数示例

xxd -p -s 16 -l 32 -c 8 file1.binary 偏移16字节,输出32个字节内容,每行输出8字节,以纯Hex方式显示

[mycc@wen*z:~]$ xxd -p -s 16 -l 32 -c 8 file1.binary22f90100004131061992674131061992670000f70100001f0933090000000310

xxd --help[mycc@wen*z:~]$ xxd --helpUsage: xxd [options] [infile [outfile]] or xxd -r [-s [-]offset] [-c cols] [-ps] [infile [outfile]]Options: -a toggle autoskip: A single * replaces nul-lines. Default off. -b binary digit dump (incompatible with -ps,-i,-r). Default hex. -c cols format cols octets per line. Default 16 (-i: 12, -ps: 30). -E show characters in EBCDIC. Default ASCII. -g number of octets per group in normal output. Default 2. -h print this summary. -i output in C include file style. -l len stop after len octets. -ps output in postscript plain hexdump style. -r reverse operation: convert (or patch) hexdump into binary. -r -s off revert with off added to file positions found in hexdump. -s [ ][-]seek start at seek bytes abs. (or : rel.) infile offset. -u use upper case hex letters. -v show version: xxd V1.10 27oct98 by Juergen Weigert.

猜你喜欢

  • 育儿百科

    分娩太疼如何办(分娩时的呼吸法

    分娩时的呼吸法1.浅呼吸:在分娩开始前,孕妇可以像分娩的那个姿势躺着,微微张开嘴唇,把气慢慢吸收进去,吸气只需吸到肺的上半部,呼吸要轻而浅,吸气和呼气间隔相等练习。此方法的主要作用在于缓解孕妈妈的腹部紧张。2.胸式呼吸:孕妇躺在床上,肩膀自然放平,仰卧,放松身体,两腿轻松张开,膝盖稍微弯曲,两手拇指张开..

    2025-10-22
  • 育儿百科

    节后如何调整生活节奏(上班犯困如何简单放松

    节后怎么调整生活节奏春节假期结束后,不少人出现“节后综合征”:焦虑失眠、情绪低落、食欲不振、不想上班、迟到、犯困……有网友戏称接下来的上班是“7天渡劫”。开工第一天的你,也有这样的情况吗?生活节奏混乱是节后综合征的主要原因,那主动调整生活节奏就是最根本的方法。第一是吃顿好饭。春节期间难免大鱼大肉、大吃..

    2025-10-22
  • 育儿百科

    孕妇吃梨子拉肚子如何回事 怀孕初期肚子疼可以吃什么

    怀孕初期肚子疼可以吃什么一、要保证蛋白质的摄入。应选择富含易消化吸收的优质蛋白质的食物,如肉类、乳类、蛋类、鱼类及豆制品等。二、确保矿物质和维生素的摄入。选择各种富含锌、钙、铜、维生素A、维生素B、维生素C和叶酸等营养素的食物,如肉类、动物肝肾、芝麻、奶类和豆类等。三、要注意碳水化合物、脂肪的适当摄入..

    2025-10-22
  • 育儿百科

    打百白破吃鸡蛋了如何办 打百白破可以吃海鲜吗

    打百白破吃鸡蛋了如何办注射白百破疫苗以后一般建议48~72小时内不要吃鸡蛋,但是这个也要根据每个人的身体情况来确定,有的人身体代谢的比较快,时间也可以提前一些。正常情况下,如果孩子不是过敏体质的话,吃鸡蛋也不会有什么太大的影响,但是注射疫苗以后,三天之内尽量不要给孩子洗澡。打百白破可以吃海鲜吗不能吃海鲜..

    2025-10-22
  • 育儿百科

    鸡内金在鸡身上什么位置 孩子鸡内金如何吃可以医治积食

    鸡内金在鸡鸡内金又名鸡嗉子、鸡肚子、鸡胃皮,是鸡胗里面的一层皮,重要是磨碎鸡子吃进去的沙子和谷物;性平、味甘,能健脾胃、消食、止痛、消除结石。具体有以下作用:1.医治食积、消化不良,脘腹胀满。一般配伍焦麦芽、焦神曲、焦山楂(三味中药合称焦三仙),莱菔子等,这些药材一般农村都可以找到,既有很好效又不如何..

    2025-10-22
  • 机械之最

    “隐藏式门把手”导致汽车频现开门难 如何确保安全不“隐藏”?

    现在,隐藏式车门把手已经成了很多新款汽车的标配。车门把手隐藏虽然统一了,可弹出的方法却是五花八门,比如按压弹出、侧拉解锁、伸手触发、APP操控等等。如果你对一款车辆不熟悉,当面对隐藏式车门把手的时候,恐怕先体验到的反而是不方便。使用不便还不是隐藏式车门把手最大的问题。最严重的是,这些看似新颖又高级的开..

    2025-10-21
  • 育儿百科

    蜂蛹如何从蜂巢取出来 孕妇吃蜂蛹对胎儿有影响吗

    蜂蛹如何从蜂巢取出来带巢的胡蜂蜂蛹可以把那个蜂蛹的盖子用手撕开,全部撕开之后,然后把蜂蛹那面倒扣过来,轻轻敲打胡蜂巢没有蜂蛹那面,要轻轻拍打,蜂蛹就会掉出来了。这样的方法取蜂蛹比较快速。也可以用手撕开盖住蜂蛹的盖子,然后再用我们的医用的那种镊子,挑出来,要轻轻挑,不能太轻,不然镊子抓不紧,也不能太重..

    2025-10-21
  • 育儿百科

    分娩是最主要的产力是什么(分娩时如何用力

    分娩时如何用力首先躺在产床上后,双脚蹬着产床或者用脚使劲蹬着脚踏,双手扶住产床两侧把手,这些都是良好的助力。其次,宫口没有开全之前不需要用力,在宫缩也就是肚子疼时,孕妇深吸一口气,然后屏住气向下使劲,就像拉大便使力一样增加腹压,98迷吧,促使宝宝从产道内分娩出来。再者,在宫缩间歇期,肚子放松不疼时,产..

    2025-10-21

微信分享

微信分享二维码

扫描二维码分享到微信或朋友圈

链接已复制
蜂鸟影院2048影视资源论坛熊猫影视河马影视星辰影视萝卜影院八哥电影网人人看电影无忧影视网橙子影视网叮当影视网天天影视网青青影视网电影天堂开心追剧网西瓜影院麻花影视网70影视网年钻网茶小舍电影藏影堂新神州影域煮酒观影体积影视爱看影院星光电影至尊影院极影公社超清视界