ajax+jsp网站开发从入门到精通,怎么查看网站外链,免费微网站建站系统,积分交易网站开发xxd 是一个 十六进制转储#xff08;hex dump#xff09;工具#xff0c;通常用于将二进制文件转换为十六进制格式#xff0c;或者反向转换#xff08;十六进制→二进制#xff09;。它是 vim 的一部分#xff0c;但在大多数 Linux 系统#xff08;如 Ubuntu#xff0…xxd 是一个 十六进制转储hex dump工具通常用于将二进制文件转换为十六进制格式或者反向转换十六进制→二进制。它是 vim 的一部分但在大多数 Linux 系统如 Ubuntu中可以直接使用。 1. 安装 xxd
如果 xxd 未安装可以通过以下方式安装
sudo apt update
sudo apt install xxd # 或安装 vim-common包含 xxd2. 基本用法
(1) 查看文件的十六进制格式
xxd 文件名示例
echo Hello test.txt
xxd test.txt输出
00000000: 4865 6c6c 6f0a Hello.左边字节偏移量00000000 表示起始位置。中间十六进制数据48 65 6c 6c 6f 0a 是 H e l l o \n 的十六进制。右边ASCII 可打印字符. 表示不可见字符。 (2) 仅显示十六进制不显示 ASCII
xxd -p 文件名示例
xxd -p test.txt输出
48656c6c6f0a(3) 从十六进制还原为二进制
xxd -r 十六进制文件 输出文件示例
echo 48656c6c6f0a hex.txt
xxd -r -p hex.txt output.txt # -p 表示纯十六进制模式
cat output.txt输出
Hello-r反向模式十六进制→二进制。-p处理纯十六进制字符串无偏移量或 ASCII 部分。 3. 常见用途
(1) 发送十六进制数据结合 nc
echo 48656c6c6f | xxd -r -p | nc IP 端口48656c6c6f Hello 的十六进制。xxd -r -p 将其转为二进制然后 nc 发送。 (2) 查看二进制文件的十六进制
xxd /bin/ls | less # 查看 ls 命令的二进制结构(3) 修改二进制文件
生成十六进制文件xxd original.bin hex_edit.txt用文本编辑器修改 hex_edit.txt。转换回二进制xxd -r hex_edit.txt modified.bin4. 高级选项
选项说明-g 字节数每组显示的字节数默认 2-l 长度只处理前 N 个字节-s 偏移量从指定偏移量开始-u使用大写十六进制字母-c 列数每行显示的字节数默认 16
示例每行 8 字节大写十六进制
xxd -u -c 8 test.txt5. 典型示例
(1) 查看 ELF 文件头
xxd /bin/ls | head -n 10输出
00000000: 7f45 4c46 0201 0100 0000 0000 0000 0000 .ELF............
00000010: 0200 3e00 0100 0000 9850 0000 0000 0000 ........P......
...7f 45 4c 46 \x7fELFELF 文件魔数。 (2) 生成随机十六进制数据
head -c 16 /dev/urandom | xxd -p输出
a1b2c3d4e5f678906. 总结
查看十六进制xxd 文件纯十六进制模式xxd -p 文件十六进制→二进制xxd -r -p 十六进制文件 输出文件网络调试echo 414243 | xxd -r -p | nc IP 端口二进制分析xxd /bin/ls | less
xxd 是处理二进制和十六进制数据的利器适用于逆向工程、网络调试、文件分析等场景