od -c -N 16 <filename.png> 显示的数字是多少
what are the numbers shown by od -c -N 16 <filename.png>
我正在使用 linux,当我输入
od -c -N 16 <filename.png>
我得到了0000000 211 P N G \r \n 032 \n [=12=] [=12=] [=12=] \r I H D R 0000020
。
我以为这个命令告诉我文件的类型,但我很好奇数字 0000000 和 211 是什么意思。有人可以帮忙吗?
od
表示 "octal dump"(类似于 hexdumper hd
)。它以八进制表示法转储文件的字节。
211 八进制是 2 * 82 + 1 * 81 + 1 = 137,所以你有一个字节值为 137那里。
行首的0000000
和下一行开头的0000020
是文件中的位置,也是八进制。如果从调用中删除 -N 16
,您将在八进制转储的左侧看到一列单调递增的八进制数;他们的目的是让您立即看到您正在阅读转储的哪一部分。
参数
-N 16
表示只读取filename.png
的前16个字节,而
-c
是一个格式选项,告诉od
- 将可打印字符打印为字符本身而不是八进制代码,并且
- 打印具有反斜杠转义序列(例如
\r
或 \n
)的不可打印字符作为转义序列而不是八进制数。
这就是不是所有字节都以八进制转储的原因。
如果您想知道文件的文件类型,请使用 file
实用程序:
file filename.png
旁注:您可能对 man
命令感兴趣,它显示了(除其他外)命令行工具的手册页。在这种特殊情况下,
man od
可能很有启发性。
我正在使用 linux,当我输入
od -c -N 16 <filename.png>
我得到了0000000 211 P N G \r \n 032 \n [=12=] [=12=] [=12=] \r I H D R 0000020
。
我以为这个命令告诉我文件的类型,但我很好奇数字 0000000 和 211 是什么意思。有人可以帮忙吗?
od
表示 "octal dump"(类似于 hexdumper hd
)。它以八进制表示法转储文件的字节。
211 八进制是 2 * 82 + 1 * 81 + 1 = 137,所以你有一个字节值为 137那里。
行首的0000000
和下一行开头的0000020
是文件中的位置,也是八进制。如果从调用中删除 -N 16
,您将在八进制转储的左侧看到一列单调递增的八进制数;他们的目的是让您立即看到您正在阅读转储的哪一部分。
参数
-N 16
表示只读取filename.png
的前16个字节,而
-c
是一个格式选项,告诉od
- 将可打印字符打印为字符本身而不是八进制代码,并且
- 打印具有反斜杠转义序列(例如
\r
或\n
)的不可打印字符作为转义序列而不是八进制数。
这就是不是所有字节都以八进制转储的原因。
如果您想知道文件的文件类型,请使用 file
实用程序:
file filename.png
旁注:您可能对 man
命令感兴趣,它显示了(除其他外)命令行工具的手册页。在这种特殊情况下,
man od
可能很有启发性。