od
有什么方法可以更改和命令的默认行长度吗hexdump
?在手册页中看不到任何合适的内容。
答案1
我知道这是一个老问题,但为了完整起见,这里有一个hexdump
每行打印 8 个字节的示例命令:
hexdump -e '8/1 " %02X" "\n"' <file>
有关 hexdump 格式字符串的更多信息可以在以下链接中找到:
- https://stackoverflow.com/questions/26694065/hexdump-how-to-change-number-of-columns
- https://www.suse.com/communities/blog/making-sense-hexdump/
对于od
,使用--width[=BYTES]
jsbillings 提到的参数。这是更多信息的手册页:
https://www.man7.org/linux/man-pages/man1/od.1.html
答案2
od
有--width=N
参数,您可以使用它来选择每行有多少字节,也许这就是您正在寻找的? hexdump
有一个-e FORMATSTRING
它有希望,但我从来没有玩过太多它。
答案3
我找到了制作 -C | 的方法-- 类似于规范但宽度宽
hexdump -e '"%08_ax " '$(($(tput cols 2> /dev/null || echo $COLUMNS ) / 4 - 4 ))'/1 "%02x " " |" '$(($(tput cols 2> /dev/null || echo $COLUMNS ) / 4 - 4 ))'/1 "%_p" /0 "| \n"'
只需将 '$(($(tput cols 2> /dev/null || echo $COLUMNS ) / 4 - 4 ))' 更改为您的值