如何使用xxd逐行生成hexdump?

时间:2017-02-18 12:09:07

标签: bash xxd

使用cat。

创建示例文件
cat > /tmp/test.txt <<EOF
> X1
> X22
> X333
> X4444
> EOF

检查样本文件中的内容。

cat  /tmp/test.txt
X1
X22
X333
X4444

使用xxd制作hexdump。

xxd   /tmp/test.txt
0000000: 5831 0a58 3232 0a58 3333 330a 5834 3434  X1.X22.X333.X444
0000010: 340a  

如何使用xxd逐行生成hexdump,如下所示:

58 31 0a
58 32 32 0a
58 33 33 33 0a
58 34 34 34 34 0a

3 个答案:

答案 0 :(得分:2)

$ xxd  -ps </tmp/test.txt|sed -e 's/\(..\)/\1 /g' -e 's/0a /0a\n/g'
58 31 0a
58 32 32 0a
58 33 33 33 0a
58 34 34 34 34 0a 

答案 1 :(得分:1)

毕竟我发现hexdump工具与sed结合使用是最佳解决方案:

hexdump -v -e '/1 "%02x "' /tmp/test.txt | sed 's/0a /0a\n/g'

答案 2 :(得分:0)

请下载并保存为/home/urls.csv。

sample file to test


测试 hexdump -v -e'/ 1“%02x”'/ home / urls.csv | sed's / 0a / 0a \ n / g'

enter image description here


测试 xargs -I'{}'bash -c'xxd&lt;&lt;&lt; “$ {1}”' - '{}'&lt; /home/urls.csv

enter image description here


测试 xargs -I'{}'bash -c'hd&lt;&lt;&lt; “$ {1}”' - '{}'&lt; /home/urls.csv enter image description here

使用

进行测试
xxd  -ps </home/urls.csv |sed -e 's/\(..\)/\1 /g' -e 's/0a /0a\n/g'

很明显,Ipor Sircer的答案对于长文件来说没有足够的稳健性。

enter image description here