使用 hexdump 复制 xxd 命令

使用 hexdump 复制 xxd 命令

在我当前的工作站上,我只有hexdump,而不允许安装其他软件包,例如xxd。所以我需要将此 xxd 命令转换为 hexdump 等效命令

echo "my home is very good 002_" | xxd -p -c 256
#Output: 6d7920686f6d65206973207665727920676f6f64203030325f0a


echo "my home is very good 002_" | hexdump -e '256 1 "%x"'
#Output: 6d7920686f6d65206973207665727920676f6f64203030325fa

如您所见,输出末尾有一个多余的“0”,这意味着我的解决方案不起作用。

你能帮我么?

答案1

尝试使用%02xhexdump 的格式说明符。除非您指定,否则单个字节不会以零为前缀。不幸的是,除非您删除它们,否则它会开始填充您的行。

例如:

echo "" | hexdump -e '256 1 "%02x"'
#Output: 0a[followed by a significant amount of whitespace]

为了完全匹配行为,您可以将 hexdump 与以下内容结合使用fold

echo "" | hexdump -e '"%02x"' | fold -b -w512

相关内容