命令行修复:chkdsk 与 diskpart
图形界面修不好时,命令行是手术刀
图形化工具再方便,也有卡壳的时候:分区能识别但就是打不开,文件名全变乱码,或者U盘莫名其妙变成只读。这类"软件层面还没彻底坏透"的毛病,往往用两条老命令就能解决:chkdsk 负责检查和修复文件系统,diskpart 负责分区层面的操作。它们是 Windows 自带的,不要钱、不挑版本,但也不讲情面——输错命令可能连后悔的机会都不给你。
准备:以管理员身份打开命令行
两条命令都需要管理员权限。按住键盘上的 Win 键不放,再按 X,在弹出的菜单里选"终端(管理员)"或"命令提示符(管理员)";Win7/Win10 用户也可以在开始菜单搜索 cmd,对"命令提示符"点右键选"以管理员身份运行"。打开后先确认U盘盘符,在"此电脑"里看一眼,比如是 H 盘。下面所有命令里的 H 都替换成你实际的盘符。
chkdsk:文件系统的"体检医生"
chkdsk 的全称是 check disk,它做两件事:检查文件系统一致性, optionally 扫描坏块并抢救数据。常用组合有三个:
chkdsk H: /f—— 最常用。检查并修复文件系统逻辑错误,比如目录链断裂、交叉链接的文件。提示"文件或目录损坏且无法读取"时,先来这一条。chkdsk H: /r—— 包含 /f 的全部功能,再增加坏扇区定位:遇到坏块时尝试把里面还能读出的数据搬到正常位置。扫描速度慢,U盘越大越久,中途别拔。chkdsk H: /x—— 先强制卸载卷再检查,适合提示"卷被占用"的情况。通常和 /f 组合写成chkdsk H: /f /x。
执行时屏幕会刷一堆百分比和阶段提示,耐心等它跑完,最后看一眼"Windows 已更正文件系统"之类的结束语。很多"半死不活"的U盘,/r 一遍就能重新打开,文件还能救回大部分。
警告:chkdsk 修复的方式是"截断"——遇到实在读不出的内容,它会直接丢弃以保持结构一致。所以对已经存有重要数据的U盘,正确顺序仍然是先做镜像备份,再跑 chkdsk;对物理上快报废的盘,/r 那一通折腾可能是压垮它的最后一根稻草。
diskpart:分区层面的"拆迁队"
如果文件系统已经修不回来,或者U盘分区被彻底搞乱,就需要 diskpart 重新规划。所有操作前,先输入 diskpart 进入交互模式,然后注意看每一步的输出,选错盘后果严重。
list disk—— 列出所有磁盘。记住U盘的编号,别和硬盘搞混,看容量最稳妥。select disk 2—— 选中U盘(数字按实际来)。此刻起你的命令只对它生效,但同时也意味着 select 错了就麻烦大了。list partition—— 看看它有哪些分区。- 需要重建时输入
clean—— 清除全部分区信息。这是不可逆操作,执行前请确认数据已经全部救出。 create partition primary—— 建主分区,然后select partition 1。format fs=exfat quick—— 快速格式化为 exFAT(U盘用这个最合适,兼容 Win 和 Mac;只用 Windows 也可以 fs=ntfs)。不加 quick 就是完全格式化,会顺便擦一遍数据。assign letter=H—— 分配盘符,完事后exit退出。
命令速查与风险等级
| 命令 | 作用 | 数据破坏风险 |
|---|---|---|
| chkdsk H: /f | 修复文件系统逻辑错误 | 低,可能截断坏文件 |
| chkdsk H: /r | 加扫坏块并转移可读数据 | 中,费时且考验盘体 |
| diskpart 的 clean | 清除全部分区表 | 高,不可逆 |
| format quick | 快速建新文件系统 | 高,目录全失 |
| detail disk | 查看磁盘详情(只读) | 无,排查时多用 |
顺手再教你一招:把U盘设为只读
配合全书反复强调的"停止写入"原则,diskpart 还有一个贴心的只读模式。以管理员身份进入命令行后:
diskpartlist disk看清编号,select disk 2选中U盘。attributes disk set readonly—— 设置完成后,系统层面拒绝任何写入,连格式化都会被拒绝。想验证一下,可以试着往U盘拖个文件,系统立刻报错"写保护"。解除则用attributes disk clear readonly。
这个招数在两种场景特别好用:一是发现U盘数据丢了,但还要插在电脑上应急读取时,先设只读再操作,杜绝误写;二是借给别人拷资料时,先设只读保护,防止对方的电脑顺手给U盘植入病毒或自动运行配置文件。只读开关是软件层面的,拔插U盘后依然有效(直到你用命令解除),但部分老旧U盘的主控可能不理睬它,所以别把它当绝对保险。
敬畏命令行
命令行的优点是直接、不绕弯;缺点也是直接、不绕弯。它没有"确定吗"的温柔提醒,执行了就执行了。养成两个习惯:输完命令先按回车前再核对一遍盘符和编号;凡是带 clean、format 的操作,一律放在确认数据已全部救出之后。工具是死的,数据是你的。
