Oli*_* R. 4 bash hexdump output
正如标题所说,这是一个例子:
$ cat test.txt
ABCD
$ hd test.txt
00000000 41 42 43 44 0a |ABCD.|
00000005
Run Code Online (Sandbox Code Playgroud)
我想要的输出是:
41
42
43
44
Run Code Online (Sandbox Code Playgroud)
我知道这可以用sed,awk和stuff,但对于大文件来说这可能会非常慢.我想到了"hexdump"的格式字符串或"od"的参数组合.你能帮帮我吗?
Joh*_*ica 10
$ echo -n 'ABCD' | hexdump -v -e '/1 "%02x\n"'
41
42
43
44
0a
Run Code Online (Sandbox Code Playgroud)
如果您不希望它0a在换行结束时打印,那么我建议先从文件中删除换行符.
od -An -vtx1 -w1 test.txt | cut -c2-
Run Code Online (Sandbox Code Playgroud)
如果您不想换行:
od -An -vtx1 -w1 test.txt | cut -c2- | fgrep -v 0a
Run Code Online (Sandbox Code Playgroud)
od选项的含义:
-An :地址:没有-v:详细,即不要写一个*而不是重复的行-tx1:输出类型:十六进制,1个字节(-tx1z用于类似hd输出)-w1 :最大宽度:1一个好处od是它可以在任何*x系统上使用.