xxd

(git)Bash:变量中的换行符与 \n 究竟有何不同?
xxd

(git)Bash:变量中的换行符与 \n 究竟有何不同?

抱歉,我在进行初始测试时一定犯了一些错误,因为将所有内容放入单个脚本后,xxd 输出确实总是与 stdouput 匹配。 完整脚本如下:https://pastebin.pl/view/454913ec 我正在更新我的问题并保留下面原始(但错误)的问题。 我获得的脚本输出如下: $ ./test.sh # Case 1A: echo -n $TEST1 hello world 00000000: 6865 6c6c 6f20 776f 726c 64 hello world # Case 1B: echo -n -e $TEST...

Admin

为什么 xxd 命令反向操作时不尊重字节分组?
xxd

为什么 xxd 命令反向操作时不尊重字节分组?

我正在尝试在脚本中将字节写入系统上的文件,并决定使用 xxd(带 -r)来实现此目的。但是,我希望它考虑每 4 个字节的字节顺序。下面是我用来测试此操作的一个例子: echo "1122334455667788" | xxd -r -p -g 4 - outfile 当我这样做时,我得到以下输出hexdump outfile: 0000000 2211 4433 6655 8877 0000008 因为我使用了-g 4,所以我期望结果是这样的 0000000 4433 2211 8877 6655 ...

Admin

使用“xxd -r”命令不会将整个 ASCII 转换为文本
xxd

使用“xxd -r”命令不会将整个 ASCII 转换为文本

我正在参加 CTF(夺旗)挑战,其中一面旗帜隐藏在 ASCII 中 cat /home/alice/flag22 39 64 31 61 65 38 64 35 36 39 63 38 33 65 30 33 64 38 61 38 66 36 31 35 36 38 61 30 66 61 37 64 当我将其输入到xxd并转换为十六进制字符,我只得到整个字符串的一个子集 cat /home/alice/flag22 | xxd -r d1ae8d569c83e03d 我希望整个字符串9d1ae8d569c83e03d8a8f61568a0fa7d(使...

Admin

为什么 xxd -r 会改变我的二进制文件的第一个字节
xxd

为什么 xxd -r 会改变我的二进制文件的第一个字节

我对 的行为感到困惑xxd,这就是我正在做的事情。 我有一个 xxd 转储: $ head dump 00000000: 7f45 4c46 0201 0103 0000 0000 0000 0000 .ELF............ 00000010: 0200 3e00 0100 0000 107f 4400 0000 0000 ..>.......D..... 00000020: 4000 0000 0000 0000 0000 0000 0000 0000 @............... 00000030: 0000 0000 40...

Admin

将位文本文件转换为二进制文件
xxd

将位文本文件转换为二进制文件

我有一个文件instructions.txt,内容如下: 00000000000000000000000000010011 00000010110100010010000010000011 00000000011100110000001010110011 00000000011100110000010000110011 00000000011100110110010010110011 00000000000000000000000000010011 我如何创建instructions.bin与 相同的数据的二进制文件instructions.txt。换...

Admin

如何从文件中转储原始二进制“位”,无需行号和 ASCII 解释?
xxd

如何从文件中转储原始二进制“位”,无需行号和 ASCII 解释?

我如何转储“纯”且简单的二进制位序列? 例如,我有这个: 0000000: 10001001 01010000 01001110 01000111 00001101 00001010 .PNG.. 0000006: 00011010 00001010 00000000 00000000 00000000 00001101 ...... 000000c: 01001001 01001000 01000100 01010010 00000000 00000000 IHDR.. 0000012: 00000010 01011000 0000000...

Admin

是否有可能逆转 xxd 以从二进制文件获取原始文件
xxd

是否有可能逆转 xxd 以从二进制文件获取原始文件

我一直在使用它xxd来创建文件的十六进制表示(任何文件,如 .jpg、.docx、.zip 等),像这样,.. $ xxd -p original_file.zip > hexa_format.txt 并逆转 $ xxd -r -p hexa_format.txt > original_file.zip 如果有人认为这不是正确的方法,请纠正我。无论如何这不是我的问题。现在我必须将它们转换为二进制而不是十六进制。如果我正确的话,命令如下。 $ xxd -p -b original_file.zip > binary_fo...

Admin

返回字节的 xxd 的替代品?
xxd

返回字节的 xxd 的替代品?

我在 Mac OS X 10.8.2 上运行xxdv1.10 的编译副本(源代码) 以及xxdOS X 上预装的副本。 我正在尝试通过终端中的管道命令链生成 Base64 编码的 SHA1 签名。 通常我会做如下的事情: $ echo "foo" | openssl sha1 | xxd -p -r | base64 - > foo_sha1_signature 该文件foo_sha1_signature通常包含字符串的 Base64 编码的 SHA1 哈希foo。 问题是xxd -p -r没有返回任何数据,所以文件foo_sha1_sig...

Admin

hexdump 与 xxd 格式的区别
xxd

hexdump 与 xxd 格式的区别

我搜索了如何进行反向十六进制转储,发现提到了 xxd。但是,它似乎无法简单地工作: xxd -r hexdumpfile > binaryfile xxd infile然后,我比较了和输出之间的差异hexdump infile,发现了三个差异: xxd 输出的地址后面有一个冒号 xxd 输出的数据位置已反转(例如,5a42在 hexdump 输出中变为425a在 xxd 输出中) 每行后面都有一些额外的字符 我在服务器上只有某些文件的十六进制转储版本。如何使用 xxd 正确恢复二进制数据? ...

Admin

如何将文件数据转换为纯十六进制?
xxd

如何将文件数据转换为纯十六进制?

如何使用xdd或轻松地转换为/从普通机器可读的十六进制数据(没有任何填充/偏移/字符视图) hexdump? 我厌倦了挖掘一些特殊格式的字符串(并发现它突然在 N 个字符后开始换行或跳过行)或每次都编写 Perl 单行代码。 为什么它不像base64/那么简单base64 -d? ...

Admin

xxd -r -p 有什么作用?
xxd

xxd -r -p 有什么作用?

因此,我尝试为我收到的附件计算 SHA1 摘要(并对其进行 base64 编码),以便它与它们的(base64 编码)摘要相匹配。使用 ChatGPT,我能够使用下面的命令来成功。但我不明白这个命令xxd -r -p或为什么有必要。 sha1sum foo | awk '{print $1}' | xxd -r -p | base64 有两件事我不明白: 为什么-p需要该选项?我知道xxd -r对十六进制转储进行二进制转储,但如果我不打印它,那么-p它不会打印任何内容,而手册页说它应该打印到标准输出,而这-p仅适用于特定的输出样式。 传递 SHA1 摘要的...

Admin

将 ASCII 字符映射到十六进制代码的 awk 命令不起作用
xxd

将 ASCII 字符映射到十六进制代码的 awk 命令不起作用

我正在尝试使用 awk,我认为编写一个小程序将每个 ASCII 字符与其十六进制代码映射是一个很酷的主意。这就是我到目前为止所做的: 该字符串是: abshdfitiggwigiwjirjgiejrigjr 我保持简单,不包括回车或制表符等 我将其转储到一个用逗号分隔的文件中,以便我可以使用 awk 的 -F 标志将它们识别为字段: a,b,s,h,d,f,i,t,i,g,g,w,i,g,i,w,j,i,r,j,g,i,e,j,r,i,g,j,r, 我对同一文件的十六进制转储做了同样的事情: 61,62,73,68,64,66,69,74,69,67,6...

Admin

将“xxd”命令与输出结合在一起
xxd

将“xxd”命令与输出结合在一起

我有以下十六进制转储: 00000000: 2345 5854 5241 530a 0a31 2e20 746f 2061 #EXTRAS..1. to a 00000010: 6464 2075 7365 723a 2060 7375 646f 2075 dd user: `sudo u 00000020: 7365 7261 6464 205b 7573 6572 6e61 6d65 seradd [username 00000030: 5d60 2061 6e64 2074 6865 6e20 6073 7564 ]` and then `su...

Admin

为什么将 Base64 解码的字符串分配给变量时删除 0x00
xxd

为什么将 Base64 解码的字符串分配给变量时删除 0x00

我使用的是 Mac。在 Bash 中,我尝试解码 Base64 字符串,然后尝试打印十六进制值。我正在使用base64 -d命令,然后将其分配给变量。 myText='YYN29+2wV2XRAHymIyhgytWuqY4atgHnIUFfXA7FPOA=' myTextBytes=$(echo -n "$myText" | base64 --decode) echo -n $myTextBytes | xxd -p -c 99999 上述脚本的输出是: 618376f7edb05765d17ca6232860cad5aea98e1ab601e72141...

Admin