Linux指令:od (octal dump)

示例用法:od -c hello

Linux指令:od

od命令
用户通常使用od命令查看特殊格式的文件内容。通过指定该命令的不同选项可以以十进制、八进制、十六进制和ASCII码来显示文件。

语法:od [选项] 文件…
命令中各选项的含义:
- A 指定地址基数,包括:
d 十进制
o 八进制(系统默认值)
x 十六进制
n 不打印位移值
- t 指定数据的显示格式,主要的参数有:
c ASCII字符或反斜杠序列
d 有符号十进制数
f 浮点数
o 八进制(系统默认值为02)
u 无符号十进制数
x 十六进制数
除了选项c以外的其他选项后面都可以跟一个十进制数n,指定每个显示值所包含的字节数。

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

例如:

  1. $ od - Ax - tcx1 wh5
  2. 000000 F i l e s y s t e m
  3. 46 69 6c 65 73 79 73 74 65 6d 20 20 20 20 20 20
  4. 000010 1 k - b l o c k s
  5. 20 20 20 20 20 31 6b 2d 62 6c 6f 63 6b 73 20 20
  6. 000020 U s e d A v a i l a b
  7. 20 20 20 20 55 73 65 64 20 41 76 61 69 6c 61 62
  8. 000030 l e U s e % M o u n t e d
  9. 6c 65 20 55 73 65 25 20 4d 6f 75 6e 74 65 64 20
  10. ---- My test -----
  11. ysun@linetcps1dev:~> cat a
  12. hello,world.
  13. Joey.
  1. ysun@linetcps1dev:~> od -Ax -tcx4 a
  2. 000000 h e l l o , w o r l d . \n \t J o
  3. 6c6c6568 6f772c6f 2e646c72 6f4a090a
  4. 000010 e y . \n \n \0 \0 \0
  5. 0a2e7965 0000000a
  6. 000015

常用发:

root@iZ23onhpqvwZ:~/ms/linux/sysProgram# od -c creatfile.txt
0000000 a b c d e f g h i j \0 \0 \0 \0 \0 \0
0000020 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0000040 \0 \0 \0 \0 \0 \0 \0 \0 A B C D E F G H
0000060 I J
0000062

root@iZ23onhpqvwZ:~/ms/linux/sysProgram# od -x -c creatfile.txt
0000000 6261 6463 6665 6867 6a69 0000 0000 0000
a b c d e f g h i j \0 \0 \0 \0 \0 \0
0000020 0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0000040 0000 0000 0000 0000 4241 4443 4645 4847
\0 \0 \0 \0 \0 \0 \0 \0 A B C D E F G H
0000060 4a49
I J
0000062

root@iZ23onhpqvwZ:~/ms/linux/sysProgram# od -x creatfile.txt
0000000 6261 6463 6665 6867 6a69 0000 0000 0000
0000020 0000 0000 0000 0000 0000 0000 0000 0000
0000040 0000 0000 0000 0000 4241 4443 4645 4847
0000060 4a49
0000062

root@iZ23onhpqvwZ:~/ms/linux/sysProgram# hexdump -C creatfile.txt
00000000 61 62 63 64 65 66 67 68 69 6a 00 00 00 00 00 00 |abcdefghij......|
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000020 00 00 00 00 00 00 00 00 41 42 43 44 45 46 47 48 |........ABCDEFGH|
00000030 49 4a |IJ|
00000032

注意hexdump -C为大写:

-C Canonical hex+ASCII display. Display the input offset in hexadecimal, followed by sixteen space-separated, two column, hexadecimal
bytes, followed by the same sixteen bytes in %_p format enclosed in ``|'' characters

-c小写只显示字符

od 和 hexdump
实用程序 od 和 hexdump 分别输出文件或流的八进制、十六进制或其他编码的字节。它们对于访问或可视地检查文件中不能直接显示在终端上的字符很有用。

HERE 文档
有一种特殊的重定向值得在本教程中提一下。虽然严格地讲,HERE 文档是诸如 bash 这样的 shell
的特性,而不是与文本实用程序有关的任何东西,但是它们提供了向文本实用程序发送特殊数据的有用途径。
双小于号重定向可用于从终端接收伪文件的内容。HERE 文档必须紧跟在 << 后面指定一个终止分隔符。
如:

  1. $ od -c <<END
  2. > Alice
  3. > Bob
  4. > END
  5. 0000000 A l i c e \n B o b \n
  6. 0000012

任何字符串都可以用作分隔符;输入将在一行上遇到该字符串本身的地方终止。这样为我们提供了创建持久性文件的快捷方法:

  1. $ cat myfile <<EOF
  2. > Dave
  3. > Edna
  4. > EOF
  5. $ hexdump -C myfile
  6. 00000000 44 61 76 65 0a 45 64 6e 61 0a |Dave.Edna.|
  7. 0000000a

这就是Linux指令od的知识。

参考:http://codingstandards.iteye.com/blog/805778

最新文章

  1. MVVM架构~Knockoutjs系列之验证机制的引入
  2. BZOJ 3270: 博物馆
  3. Windows2003 SQL2005解决系统Administrator密码不知道的问题
  4. bisController
  5. readonly=“readonly”与readonly=“true”
  6. Vue.2.0.5-条件渲染
  7. 2016 ACM/ICPC Asia Regional Qingdao Online 1001/HDU5878 打表二分
  8. 菜鸟-手把手教你把Acegi应用到实际项目中(8)-扩展UserDetailsService接口
  9. Unity3D脚本中文系列教程(五)
  10. tomcat log
  11. 操作数据表中的记录——SELECT (where表达式、GROUP BY、HAVING、LIMIT)
  12. jsp中包含JAVA代码
  13. OS X 键盘快捷键
  14. 使用Nginx+CppCMS构建高效Web应用服务器(之二)
  15. shiro开发,shiro的环境配置(基于spring+springMVC+redis)
  16. Burnside引理和Polya定理之间的联系
  17. MFC 对话框不显示,返回-1 原因
  18. Android : 跟我学Binder --- (2) AIDL分析及手动实现
  19. Excel文件上传存储到数据库
  20. Android中Handler的使用方法及实例(基础回顾)

热门文章

  1. [转]OpenMP中的private/firstprivate/lastprivate/threadprivate之间的比较
  2. 目的:将两个三T的硬盘做成LVM(sdc,sdd)
  3. 在linux下安装配置rabbitMQ详细教程
  4. eclipse JavaEE版"javax.servlet.http.HttpServlet" was not found on the Java Build Path问题的解决办法
  5. C语言 百炼成钢27
  6. JFinal使用笔记3-注册和登录功能开发记录
  7. C#调用ActiveX
  8. Delphi TreeView – 自动给标题上加图片
  9. 【BZOJ4421】[Cerc2015] Digit Division 动态规划
  10. ArcGIS Runtime SDK for iOS开发系列教程(5)——要素信息的绘制