如标题所示,这是一个示例:

$ cat test.txt
ABCD
$ hd test.txt
00000000  41 42 43 44 0a                                    |ABCD.|
00000005

我想要的输出将是:
41
42
43
44

我知道sed,awk和其他东西是可能的,但是对于大文件来说这可能会很慢。我想到了“hexdump”的格式字符串或“od”的参数组合。你能帮我吗?

最佳答案

od -An -vtx1 -w1 test.txt | cut -c2-

如果您不想换行:
od -An -vtx1 -w1 test.txt | cut -c2- | fgrep -v 0a
od选项的含义:
  • -An:地址:无
  • -v:详细,即,不要写*而不是重复行
  • -tx1:输出类型:十六进制,1个字节(将-tx1z用于类似hd的输出)
  • -w1:最大宽度:1

  • 关于 od 的一件好事是,它可以在任何*x系统上使用。

    关于bash - 输出文件,每行一个字节,十六进制格式(在Linux bash下),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21713725/

    10-13 05:49