原文地址:CMD中使用attrib命令设置文件只读、隐藏属性详解

本文介绍一个cmd下的一个attrib.exe的小程序,它可以用来设置文件的属性。我们知道文件的属性有只读、隐藏、系统、存档和无内容索引等5个,只读和隐藏用得比较多,另外三个用得比较少。

不知道大家有没有用过attrib.exe这个cmd下的小程序,它可以用来设置文件的属性。先来看看它的帮助文件。

C:\Users\splaybow>help attrib
显示或更改文件属性。
ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I]
[drive:][path][filename] [/S [/D] [/L]]
+ 设置属性。
- 清除属性。
R 只读文件属性。
A 存档文件属性。
S 系统文件属性。
H 隐藏文件属性。
I 无内容索引文件属性。
[drive:][path][filename]
指定 attrib 要处理的文件。
/S 处理当前文件夹及其所有子文件夹中的匹配文件。
/D 也处理文件夹。
/L 处理符号链接和符号链接目标的属性。

我们用一个例子来看看如何使用attrib设置文件的属性。

第一步,先使用echo命令来创建一个文件:d:\2.txt

C:\Users\splaybow>echo xxxx>d:\2.txt

创建文件成功后,将不会有任何提示。

第二步,为d:\2.txt文件添加一个隐藏属性和一个只读属性。

C:\Users\splaybow>attrib +r +h d:\2.txt

设置文件属性成功后,也不会有任何提示。

第三步,显示d:\2.txt的文件属性。

C:\Users\splaybow>attrib d:\2.txt

A HR D:\2.txt

  

我们可以看到当前文件中存在存档(A)、隐藏(H)、R(只读)三种属性。这里大家可能想问,为什么会有存档(A)属性的存在呢?这个洪哥也解释不了,估计在使用echo创建文件时,文件就已经有存档(A)属性了。

第四步,我再来看看把存档、隐藏、只读、系统、无内容索引五个属性全部加上的效果。

C:\Users\splaybow>attrib +a +s +r +i +h d:\2.txt

设置文件属性成功后,不会有任何提示。

第五步,查看一下最后的文件属性

C:\Users\splaybow>attrib d:\2.txt
A SHR I D:\2.txt

  

这样看到了,五个属性全部上去了。

最后洪哥总结如下几点:
1、如果要给文件加属性使用“attrib +标记1 +标记2 ... <文件路径和名称>”这样的语法格式。
2、如果要给文件去掉一些属性,把第1条中的加号(+)换成减号(-)即可。
3、如果要查看当前文件有存档、隐藏、只读、系统、无内容索引五种属性中的哪些,可以使用“attrib <文件路径和名称>”这样的语法格式。
4、这些属性有什么意义呢?隐藏就是隐藏起来,但使用显示隐藏的开关还可以看得到。加了系统属性后,显示隐藏也看不到,必须要显示系统文件才能看到。只读代表不能修改和删除,但有一些命令可以强制删除或修改只读文件。
5、以下三条命令说明,如果文件同时有系统属性和隐藏属性,如果想要去掉其中一个,必须两个先同时都去掉。

PS C:\Users\splaybow> attrib -h d:\2.txt
未重置系统文件 - D:\2.txt
PS C:\Users\splaybow> attrib -s d:\2.txt
未重置隐藏文件 - D:\2.txt
PS C:\Users\splaybow> attrib -s -h d:\2.txt

  

  

Batch - attrib 命令的更多相关文章

  1. Attrib命令,可以让文件夹彻底的隐藏起来

    Attrib命令,可以让文件夹彻底的隐藏起来,就算是在文件夹选项中设置了显示隐藏文件夹,也无法显示出来的.只能通过路径访问的方式打开文件夹.如上图,就是attrib命令的隐藏文件夹和显示文件夹的两条命 ...

  2. Dos学习笔记(3)attrib命令

    今天和昨天一直在摸索这个命令觉得这个命令为什么改变不了文件夹的属性, 因为我试着用attrib +r /s 去修改子文件夹的时候发现没用,然后如果输入 attrib +r /d 又提示说/d需要和/s ...

  3. Batch - forfiles 命令详解

    forfiles 命令详解 C:\Users\cuixunxu>forfiles /? FORFILES [/P pathname] [/M searchmask] [/S] [/C comma ...

  4. Batch - Windows Batch 常用命令

    比较符号(不能用 < , >) The reason operators like > are not used is because they have special meani ...

  5. batch 常用命令

    1 echo 和 @ 回显命令 @ # 关闭单行回显 echo off # 从下一行开始关闭回显 @echo off # 从本行开始关闭回显,一般批处理第一行都是这个 echo on # 从下一行开始 ...

  6. 【batch】命令对比两个文件夹下的文件(增删改的对比)

    1.分别打印两个目录的结构 TREE D:\SOURCE /A /F >D:\SOURCE.TXT TREE D:\DEST /A /F >D:\DEST.TXT 2.然后使用工具/命令进 ...

  7. window中的attrib命令

    attrib -s -h -r autorun.infattrib +s +h +r autorun.infattrib -s -h -r my.icoattrib +s +h +r my.ico

  8. attrib命令能用批处理实现文件夹批量显示吗?

    attrib H:\* -s -h -a -r /s /d 加上/s /d参数就行了.(H表示你的U盘盘符)

  9. Batch - windows batch 常用命令(cheat sheet)

    原文地址:https://www.oschina.net/code/snippet_158297_4964 1 echo 和 @ 回显命令 @ #关闭单行回显 echo off #从下一行开始关闭回显 ...

随机推荐

  1. 让APK只包含指定的ABI(转)

    转自:http://blog.csdn.net/justfwd/article/details/49308199 现在很多android第三方 sdk是以aar形式提供的,甚至是远程aar,如果这个s ...

  2. Application.mk语法解释(转)

    转自:http://blog.csdn.net/roland_sun/article/details/46318893 Application.mk是用来描述你的应用程序需要哪些模块,以及这些模块所要 ...

  3. C# 进制转换(二进制、十六进制、十进制互转) 转载 https://www.cnblogs.com/icebutterfly/p/8884023.html

    C# 进制转换(二进制.十六进制.十进制互转)由于二进制数在C#中无法直接表示,所以所有二进制数都用一个字符串来表示例如: 二进制: 1010 表示为 字符串:"1010" int ...

  4. C—变量

    C—变量 在C语言中,变量要先定义后使用. 使用时,必须说明变量的存储类型与数据类型. 变量说明的一般形式: <存储类型>  <数据类型>  <变量名> 存储类型的 ...

  5. vue 通过插槽分发内容

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. linux IPC共享内存

    共享内存相关函数 获得一个共享存储标识符 #include <sys/ipc.h> #include <sys/shm.h int shmget(key_t key, size_t ...

  7. Linux环境下安装PHP的mbstring模块

    cd /home/local/php-5.6.25/ext/mbstring/usr/local/php/bin/phpize./configure --with-php-config=/usr/lo ...

  8. vue-element-admin打包后白屏的问题

    publicPath: './',

  9. 您应升级到 MySQL 5.5.0 或更高版本。 phpmyadmin

    最近又折腾LAMP了.从官方下载的phpmyadmin在部署的时候发现 “您应升级到 MySQL 5.5.0 或更高版本”.原因是我安装的mysql数据库版本过低. 解决思路: 1.升级mysql版本 ...

  10. VMware Pro v14.1.1 官方版本及激活密钥

    热门虚拟机软件VMware Workstation Pro现已更新至14.1.1,14.0主要更新了诸多客户机操作系统版本,此外全面兼容Wind10创建者更新.12.0之后属于大型更新,专门为Win1 ...