我有一个名为的文件input_file
,以下是内容input_file
:
$ cat input_file
1
2
3
4
5
6
7
8
9
然后我运行以下命令:
$ od -to2 input_file
输出:
0000000 005061 005062 005063 005064 005065 005066 005067 005070
0000020 005071
0000022
我的问题是:输出的'005'是什么意思od
?
您选择的输出选项将占用2个字节,并将结果显示为八进制数字。
因此,您从数字1
和字符开始\n
。我们可以通过以下方法更容易地看到这一点od -cx
:
% od -cx f
0000000 1 \n 2 \n 3 \n 4 \n 5 \n 6 \n 7 \n 8 \n
0a31 0a32 0a33 0a34 0a35 0a36 0a37 0a38
0000020 9 \n
0a39
0000022
使用您的代码时od -to2
,将使用这两个字符并将其视为16位数字的“低字节,高字节”。
因此,数字为10 * 256 + 49(\n
ASCII为10,是高字节;1
ASCII为49,是低字节)。该总和为2609。
八进制的2609是005061-这是输出中的第一个数字。(十六进制为a31,也与od -cx
输出匹配)。
这就是您所看到的;od将您的输入转换为16位整数,并以八进制显示它们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句