命令是干什么的
attrib 查看或修改文件与目录的四种属性:只读 R、隐藏 H、系统 S、存档 A。加号设置、减号清除,/s 递归子目录、/d 连目录一起处理。它是清理 U 盘病毒残留(病毒常把正常文件设成隐藏系统属性)与批量修正属性的主力命令。
属性和权限不是一回事
attrib 改的是文件属性位,不是访问控制列表:把文件设为隐藏只影响资源管理器是否显示,有权限的进程照样能读写。清除隐藏与系统属性后若仍看不见,要去文件夹选项里打开显示隐藏文件和受保护的系统文件。
基本信息
| 适用平台 | Windows 全版本 CMD(Windows 7/10/11 与各版 Server) |
|---|---|
| 语法 | attrib [+r|-r] [+h|-h] [+s|-s] [+a|-a] [/s] [/d] [路径] |
| 属性缩写 | R 只读、H 隐藏、S 系统、A 存档;加号设置、减号清除 |
| 递归参数 | /s 处理子目录中的文件,/d 连目录本身一起处理 |
典型使用场景
- 清理 U 盘病毒留下的隐藏与系统属性,让正常文件重新可见
- 批量把文件设为只读,防止模板或配置被误覆盖
- 查看某个文件当前是否带只读或隐藏属性
- 发布前清掉导出文件的存档属性,便于备份工具识别
- 对整棵目录树递归修正属性
常用示例
常用示例
attrib D:\report.xlsx # 查看文件当前属性
attrib +r D:\report.xlsx # 设为只读
attrib -h -s /s /d D:\Udisk\*.* # 递归清除隐藏与系统属性(U 盘病毒清理)
attrib +a D:\data\*.* /s # 递归设置存档属性
attrib /s /d D:\sym\*.lnk # 列出目录树内所有快捷方式及其属性属性读法
| 属性 | 含义 | 典型用途 |
|---|---|---|
| R | 只读 | 防误写,但有权限的进程仍可修改 |
| H | 隐藏 | 资源管理器默认不显示 |
| S | 系统 | 标记为操作系统文件,默认不显示 |
| A | 存档 | 备份工具据此判断是否需要增量备份 |
| /s | 递归子目录 | 漏加会显得命令没生效 |
| /d | 连目录一起处理 | 只处理文件时不需要 |
attrib 不带路径只作用于当前目录的匹配项,漏加 /s /d 会让命令看起来没生效,实际是处理范围不对。
在错误的目录递归改属性会波及无关文件:执行前先 cd 到目标目录,用 dir 或 attrib 预览匹配结果再动手。