Od

linux命令od的輸出中的'005’是什麼意思?

  • August 20, 2016

我有一個文件叫做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 個字節並將結果顯示為八進制數。

所以你從 digit1和 character開始\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 位整數並以八進制顯示。

引用自:https://unix.stackexchange.com/questions/304655