如何在Mac终端上,从底层按照字节用十六进制查看某个硬盘的内容(使用dd和hexdump实现winhex的功能,所以其他系统也可以使用这个方法)

首先需要强调:这种方法不能保证所有的硬盘都可以查看,有些硬盘由于一些原因会显示“Resource busy”,比如说时间机器的硬盘,内置硬盘等。

准备:

  1. 当然是一台 Mac;
  2. hexdump程序
  3. dd程序

方法如下:

$ sudo dd if=/dev/disk4 count=100000 | hexdump -C > disk.txt

下面做一些解释:

  1. 必须使用sudo来获取权限,不然无法查看硬盘文件,这点与 一些 Linux 发行版不同。
  2. dd是一个经常拿来字节级拷贝硬盘、系统的程序,所以我们可以利用这点来进行输出。
  3. if=/dev/disk4是输入文件的目录,这里的/dev/disk4是我们要查看的硬盘。需要注意一点:必须查看的是硬盘,而不是某个分区。如果你无法区分这点,那么请看我的另外一篇博客《macOS 如何使用终端命令装载和卸载推出外接硬盘(diskutil命令使用以及 APFS 格式的形式探究)》的「扩展知识」部分。
  4. count=100000表示输出 100000 个块,如果你只是为了看文件系统的一些信息,那么只使用 1000 差不多就够用了。
  5. 输出之后需要hexdump -C来进行解读,hexdump是一个终端上用十六进制查看文件的程序,-C则会在右侧显示对应的字符。
  6. > disk.txt则会将结果输出成一个名为disk.txt的文件,这样方便我们查看。

其他系统也可以使用这种方法,区别在于硬盘设备的路径,Linux 一般是在/mnt/目录下。

希望能帮到有需要的人~

你可能感兴趣的:(UNIX,笔记,macos)