由于可执行文件通常是binary file,使用上头提到的指令来读取他的内容时候,确实会产生类似乱码的数据,这时候可以利用od这个指令来读取。
利用这个指令,可以将 data file 或者是 binary file 的内容数据给他读出来。 虽然读出的来数值默认是使用非文本文件,亦即是 16 进位的数值来显示的, 不过,我们还是可以通过 -t c的选项与参数来将数据内的字符以 ASCII 类型的字符来显示, 虽然对于一般使用者来说,这个指令的用处可能不大,但是对于工程师来说, 这个指令可以将 binary file 的内容作一个大致的输出,他们可以看得出东西的。
如果对纯文本文件使用这个指令,你甚至可以发现到 ASCII 与字符的对照表。例如上述的范例二,你可以发现到每个英文字 S 对照到的数字都是 123,转成十进制你就能够发现那是 83。 如果你有任何程序语言的书,拿出来对照一下 ASCII 的对照表,就能够发现真是正确的。
例题:我不想找 google,想要立刻找到 password 这几个字的 ASCII 对照,该如何通过 od来判断?答:其实可以通过刚刚上一个小节谈到的管线命令来处理!如下所示: echopassword | od -t oCc echo 可以在屏幕上面显示任何信息,而这个信息不由屏幕输出,而是传给 od 去继续处理!就可以得到 ASCII code 对照。