在我目前的工作站上,我只有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
嘗試用作%02x
十六進制轉儲的格式說明符。除非您指定,否則單一位元組不會以零為前綴。不幸的是,除非你把它們去掉,否則這會開始填滿你的線條。
例如:
echo "" | hexdump -e '256 1 "%02x"'
#Output: 0a[followed by a significant amount of whitespace]
要完全匹配行為,您可以將 hexdump 與 結合使用fold
:
echo "" | hexdump -e '"%02x"' | fold -b -w512