美文网首页Linux学习之路
Linux命令学习手册-od

Linux命令学习手册-od

作者: QuietHeart | 来源:发表于2020-02-03 15:05 被阅读0次
    od [OPTION]... [FILE]... 
    od [-abcdfilosx]... [FILE] [[+]OFFSET[.][b]] 
    od --traditional [OPTION]... [FILE] [[+]OFFSET[.][b] [+][LABEL][.][b]]
    

    功能

    把文件用8进制或者其他的格式显示出来。通常用于查看特殊格式文件的内容。

    举例

    od 查看 file1 内容

    $od file1
    

    输入之后,输出如下:

    0000000 005141 
    0000002
    

    这里, file1 使用 echo a >file1 生成的,己 file1 中只有一个字符 a

    od 查看 file1file2 的内容

    $od file1 file2
    

    输入之后,输出如下:

    0000000 005141 005142 
    0000004
    

    这里, file1 的内容是 a , file2 的内容是 b ,将两个文件作为输入的时候,就把两个文件合并起来了。

    od 查看 test 内容,地址基数用十进制显示

    $od -Ad test
    

    输入之后,输出如下:

    0000000 062550 062562 066440 065541 020145 020141 062564 072163 
    0000016 000012 
    0000017
    

    这里,地址基数就是输入中的第一列。

    用字符来显示文件 test

    $od -t c test
    

    $od -tc test
    

    输入之后,输出如下:

    0000000   h   e   r   e       m   a   k   e       a       t   e   s   t 
    0000020  \n 
    0000021
    

    这里,文件的内容实际就是 here make a test 这一行内容,如果是中文的字符就会显示相应的编码了。

    每行只用2个字节显示

    $od -w2 test
    

    输入之后,输出如下:

    0000000 062550 
    0000002 062562 
    0000004 066440 
    0000006 065541 
    0000010 020145 
    0000012 020141 
    0000014 062564 
    0000016 072163 
    0000020 000012 
    0000021
    

    这里,最少就是两个字节宽度了,如果指定一个字节,那么也自动变成两个字节的了。

    每行只用4个字节显示

    $od -w4 test
    

    输入之后,输出如下:

    0000000 062550 062562 
    0000004 066440 065541 
    0000010 020145 020141 
    0000014 062564 072163 
    0000020 000012 
    0000021
    

    字符方式输出 test 内容,跳过两个字节

    $ od -tc -j 2 test
    

    输入之后,输出如下:

    0000002   r   e       m   a   k   e       a       t   e   s   t  \n 
    0000021
    

    只显示两个字节,用字符方式显示

    $ od -tc -N2 test
    

    输入之后,输出如下:

    0000000   h   e 
    0000002
    

    这里,为了便于读取,使用了字符的方式进行打印。如果同时指定了 -j 跳过的选项,那么就会从 -j 指定的相应位置打印2个字节。

    描述

    这个命令默认把文件的内容用八进制的形式清晰地写在标准输出上。如果是多个文件,那么会把文件合并显示,如果没指定文件名称,那么就择标准输入作为默认的输入。通过指定该命令的不同项可以以十进制、八进制、十六进制和ASCII码来显示文件。

    常用的项:

    • -A 指定地址(文件 offset )用什么基数打印,包括:
      • d 十进制
      • o 八进制(系统默认值)
      • x 十六进制
      • n 不打印位移值(也就是不打印地址偏移部分)
    • -j Bytes 首先跳过 Bytes 的输入。
    • -S [Bytes] 输出至少 Bytes 的图形字符串,这里的缩减形式等价于 --strings[=Bytes]
    • -w [Bytes] 指定每行的输出字节数目。
    • -N Bytes 指定显示的输入限定为 Bytes 字节。
    • -t 指定数据的显示格式,主要的参数有:
      • c ASCII字符或反斜杠序列
      • d[SIZE] 有符号十进制数,每个整数 SIZE 字节。
      • f[SIZE] 浮点数,每个整数 SIZE 字节。
      • o[SIZE] 八进制(系统默认值为 02 ),每个整数 SIZE 字节。
      • u[SIZE] 无符号十进制数,每个整数 SIZE 字节。
      • x[SIZE] 十六进制数,每个整数 SIZE 字节。

    除了项 c 以外的其他选项后面都可以跟一个十进制数 n ,指定每个显示值所包含的字节数。实际有一些简写形式,例如-t c等价于 -c ,具体参见 man 手册。

    更详细的信息参见 man 手册。

    说明: od 命令系统默认的显示方式是八进制,这也是该命令的名称由来(Octal Dump)。但这不是最有用的显示方式,用ASCII码和十六进制组合的方式能提供更有价值的信息输出。

    其他

    待添加。

    相关文章

      网友评论

        本文标题:Linux命令学习手册-od

        本文链接:https://www.haomeiwen.com/subject/qreczctx.html