美文网首页Linux学习|Gentoo/Arch/FreeBSD我用 Linux
unix常用命令手册 - xxd 查看十六进制

unix常用命令手册 - xxd 查看十六进制

作者: 我思故我在2020 | 来源:发表于2020-02-21 20:45 被阅读0次

xxd

名称

xxd - make a hexdump or do the reverse

概要

xxd -h[elp]
xxd [options] [infile [outfile]]
xxd -r[evert] [options] [infile [outfile]]

描述

xxd 对于标准输入或给定文件,显示其16进制的内容,也可以反过来进行转换。

$ xxd hello.txt 
00000000: 6865 6c6c 6f20 776f 726c 6420 310a 6865  hello world 1.he
00000010: 6c6c 6f20 776f 726c 6420 320a            llo world 2.

选项

如果未指定infile(或指定infile为字符'-'),则采用标准输入。
如果未指定outfile(或者指定outfile为字符'-'),则采用标准输出。

-b | -bits

以二进制格式进行输出。-r, -p, -i在此模式无效。

$ xxd -b hello.txt 
00000000: 01101000 01100101 01101100 01101100 01101111 00100000  hello 
00000006: 01110111 01101111 01110010 01101100 01100100 00100000  world 
0000000c: 00110001 00001010 01101000 01100101 01101100 01101100  1.hell
00000012: 01101111 00100000 01110111 01101111 01110010 01101100  o worl
00000018: 01100100 00100000 00110010 00001010                    d 2.
-c cols | -cols cols

每行输出多少个字节。默认16(-i: 12, -ps: 30, -b: 6),最大256 。

$ xxd -c 8 hello.txt 
00000000: 6865 6c6c 6f20 776f  hello wo
00000008: 726c 6420 310a 6865  rld 1.he
00000010: 6c6c 6f20 776f 726c  llo worl
00000018: 6420 320a            d 2.
-C | -capitalize

在指定-i(输出成C语言数组格式)时使用,生成大写的变量名。

$ xxd -C -i hello.txt 
unsigned char HELLO_TXT[] = {
  0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x20,
  0x31, 0x0a, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x77, 0x6f, 0x72, 0x6c,
  0x64, 0x20, 0x32, 0x0a
};
unsigned int HELLO_TXT_LEN = 28;
-e

将每个组的数据以little-endian模式输出。

$ xxd -e hello.txt 
00000000: 6c6c6568 6f77206f 20646c72 65680a31  hello world 1.he
00000010: 206f6c6c 6c726f77 0a322064           llo world 2.
-g bytes | -groupsize bytes

几个字节成一组,使用-g 0 取消分组。

$ xxd -g 4 hello.txt 
00000000: 68656c6c 6f20776f 726c6420 310a6865  hello world 1.he
00000010: 6c6c6f20 776f726c 6420320a           llo world 2.
-h | -help

打印帮助。

-i |-include

输出成C语言数组格式。

$ xxd -i hello.txt 
unsigned char hello_txt[] = {
  0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x20,
  0x31, 0x0a, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x77, 0x6f, 0x72, 0x6c,
  0x64, 0x20, 0x32, 0x0a
};
unsigned int hello_txt_len = 28;
-l len | -len len

输出几个字节后结束。

$ xxd -l 10 hello.txt 
00000000: 6865 6c6c 6f20 776f 726c                 hello worl
-p | -ps | -postscript | -plain

以一个整块输出所有的hex, 不使用空格进行分割。

$ xxd -p hello.txt 
68656c6c6f20776f726c6420310a68656c6c6f20776f726c6420320a
-r | -revert

反向操作。

-s [+][-] seek

从第几个字节开始。+seek表示以头部向后seek字节作为起点,-seek表示以尾部向前seek字节作为起点。

$ xxd -s 3 hello.txt 
00000003: 6c6f 2077 6f72 6c64 2031 0a68 656c 6c6f  lo world 1.hello
00000013: 2077 6f72 6c64 2032 0a                    world 2.
$ xxd -s -3 hello.txt 
00000019: 2032 0a                                   2.
-u

使用大写的16进制

$ xxd -u hello.txt 
00000000: 6865 6C6C 6F20 776F 726C 6420 310A 6865  hello world 1.he
00000010: 6C6C 6F20 776F 726C 6420 320A            llo world 2.
-v | -version

显示版本信息。

相关文章

  • unix常用命令手册 - xxd 查看十六进制

    xxd 名称 xxd - make a hexdump or do the reverse 概要 描述 xxd 对...

  • vi模式下查看二进制文件

    查看文件 Linux下用vi打开文件后,在命令模式下输入:%!xxd。%xxd是已十六进制显示当前所编辑文件,回车...

  • SVN的使用

    UNIX常用命令 SVN的使用 查看文件状态 附

  • 乌班图命令

    常用命令 man 查看帮助手册说明信息--help 查看命令帮助信息 (命令 --help)tab 命令自动...

  • linux 的基本用法

    类 Unix 系统下的一些常用命令和用法。 实用命令 fuser 查看文件被谁占用。 id 查看当前用户、组 id...

  • UNIX常用命令行

    附录:UNIX常用命令 =============================================...

  • vim 快捷键

    vim -b hello.so 加上-b参数,以二进制打开 :%!xxd -g 1 切换到十六进制模式显示

  • Anaconda

    适用 Unix 系。 常用命令

  • visusal Studio Code 十六进制查看pdf

    第一种方式 使用linux xxd命令查看对应的文件。 如果文件相对较小可直接使用: xxd test.pdf 如...

  • unix常用命令

    UNIX操作指引 目录 1 Shell常用命令.....................................

网友评论

    本文标题:unix常用命令手册 - xxd 查看十六进制

    本文链接:https://www.haomeiwen.com/subject/rmphqhtx.html