7个版本
0.2.4 | 2019年5月7日 |
---|---|
0.2.3 | 2019年5月7日 |
0.1.1 | 2019年5月6日 |
#122 in #hex
740KB
313 行
包含 (DOS 可执行文件, 725KB) hew.exe
赫威
赫威是一个命令行工具,用于将二进制数据转换为十六进制,反之亦然。这是我偶尔需要执行的任务,我想要一个简单的工具,可以覆盖常见的案例,这样我就不必一遍又一遍地编写这段代码。
提供的十六进制数据将忽略空白或分隔符字符进行读取,以支持最广泛的使用案例。十六进制输出可配置,允许使用分隔符,可选的 '0x' 前缀,将十六进制单词分组,以及多行给定数量的数据字节。
用法
赫威有两种不同的模式——bin和hex,必须在命令行上提供一种模式。在bin模式下,将创建一个二进制文件,在hex模式下,将创建一个包含十六进制数字的文本文件。
hew 0.2
Noah Ryan
Binary to Hex, Hex to Binary Converter
USAGE:
hew [FLAGS] [OPTIONS] --input <FILE> --output <OUTFILE>
FLAGS:
-l, --lowercase Print hex in lowercase (default is UPPERCASE)
-p, --prefix Print hex with the '0x' prefix before each word, if printing with separated words
-h, --help Prints help information
-V, --version Prints version information
OPTIONS:
-i, --input <FILE> Input file to convert
-m, --mode <MODE> The target format, either 'hex' or 'bin
-o, --output <OUTFILE> Output file
-r, --row-width <ROWWIDTH> Row length in decoded bytes when decoding binary into hex
-s, --sep <SEPARATOR> String separator between words [default: ]
-w, --word-width <WORDWIDTH> Number of bytes to decode between separators on a line. Defaults to no separators.
编码
给定以下名为numbers.hex的文件中的十六进制数字
0123456789ABCDEF
运行以下命令来编码它们为二进制
hew -i numbers.hex -o numbers.bin -m bin
以获取文件(如使用xxd查看)
00000000: 0123 4567 89ab cdef .#Eg....
编码没有标志来控制过程——十六进制数字从文件中读取,跳过无关字符,如空白。需要注意的一点是,赫威将尝试编码任何看起来像十六进制的字符,因此单词 "Become" 将被编码为 0xBECE(非十六进制字符将被忽略)。最好在文件中只有空白、标点符号和 '0x' 字符以及您的十六进制数据。
赫威可以接受的另一个文件示例是
0x0123 0x4567
0x89AB
0xCDEF
其中赫威会注意到 '0x' 字符在一起,并忽略它们。
解码
当将二进制数据解码为十六进制数字时,赫威提供了一些选项。
使用以下示例二进制文件(如使用xxd查看)
00000000: 0123 4567 89ab cdef .#Eg....
这些选项控制结果是否为单一字符序列
hew -i numbers.bin -o numbers.txt -m hex
结果如下
0123456789ABCDEF
这可以被修改为,例如,打印2个字节作为一个单词,前面有0x,每行4个字节。
hew -i numbers.bin -o numbers.txt -m hex -p -w 2 -r 4
结果如下
0X0123 0X4567
0X89AB 0XCDEF
另一个示例可以是每个字节用逗号分隔,没有前缀,所有内容都在一行上
hew -i numbers.bin -o numbers.txt -m hex -w 1 -s ", "
01, 23, 45, 67, 89, AB, CD, EF
安装
可以使用'cargo'安装赫威
cargo install hew
或者可以从https://github/nsmryan/hew/releases获取二进制文件进行安装。
许可证
赫威根据您选择的MIT许可证或APACHE 2.0许可证进行许可。
依赖关系
~755KB