补充说明
mread 是 mtools 的低层读取命令,把 MS-DOS/FAT 文件系统中的文件按原始字节复制到 Unix 文件。它不做文本换行转换,也不做字符集处理。
该命令在日常使用中很少见,复制文件通常用 mcopy:mcopy 支持通配符、文本模式转换和更多选项,功能覆盖 mread。mread 更多出现在旧脚本或需要“不经任何转换”读取的特殊场景。
语法上源使用 DOS 路径(可带盘符或 ::),目标是本地 Unix 路径。目标已存在时行为依版本而定,覆盖前请确认。
语法
mread [-i 镜像] [-o 偏移] 源文件 目标文件
选项
-i 镜像:操作指定的镜像文件-o 偏移:文件系统在镜像中的字节偏移-v:输出详细信息(部分版本支持)
实例
# 从镜像中读取二进制文件
mread -i disk.img ::data.bin ./data.bin
# 读取根目录下的配置文件
mread -i disk.img ::CONFIG.SYS ./CONFIG.SYS
# 推荐的等价写法(支持更多选项)
mcopy -i disk.img ::data.bin ./data.bin
# 校验读出的文件
sha256sum data.bin
注意事项
- 日常复制请优先使用 mcopy,mread 属于低层工具。
- 读出的文件不保留 FAT 时间戳与属性,需要时用 mcopy。
- 只读操作不会修改镜像,但仍建议避免与挂载同时进行。