您的位置:首页 > 其它

[一日一教学](15)设置文件属性:attrib

2017-11-07 16:50 260 查看
帮助信息:
显示或更改文件属性。

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 处理符号链接和符号链接目标的属性。
复制代码
如果是使用xp的同学,可能会发现,这个帮助信息比你的帮助信息多出了一个“参数/l”还有一个“I 无内容索引文件属性”。
“符号链接”和“索引文件”都是后xp时代引进的新概念(据说vista采用了这些技术,win7中是实打实的见识到了),如果要介绍/l 和 i 又不得不说明“符号链接”和“索引文件”,但这两个概念我自身都没明白透彻,所以决定暂时不讲,待日后学透彻了,再来补充本教程。

命令概括:
attrib,全英文attribute,意为:属性;下辖2个参数(不包括/l),可设置4种属性(不包括“属性 i”)。

参数详解:

首先输入光杆attrib。
例如:
C:\Users\helloworld\Desktop>attrib

A            C:\Users\helloworld\Desktop\02.txt

A       I    C:\Users\helloworld\Desktop\1.txt

A            C:\Users\helloworld\Desktop\3.txt

A            C:\Users\helloworld\Desktop\48个音标视屏提取器.bat

A            C:\Users\helloworld\Desktop\a.txt

A            C:\Users\helloworld\Desktop\aboboo.lnk

A            C:\Users\helloworld\Desktop\BaiduHelpBook.chm

A            C:\Users\helloworld\Desktop\Batch external command.txt - 快捷方

nk

A            C:\Users\helloworld\Desktop\clip.txt

A            C:\Users\helloworld\Desktop\clip1.bat

   SH        C:\Users\helloworld\Desktop\desktop.ini

A            C:\Users\helloworld\Desktop\Google 翻译.url

A            C:\Users\helloworld\Desktop\hello.bat

A            C:\Users\helloworld\Desktop\HprSnap6.exe.lnk

A            C:\Users\helloworld\Desktop\Internet Explorer.lnk

A            C:\Users\helloworld\Desktop\MyRarHelp.txt

A            C:\Users\helloworld\Desktop\new  2.bat

A            C:\Users\helloworld\Desktop\QQ影音.lnk

A            C:\Users\helloworld\Desktop\Script56.CHM - 快捷方式.lnk

A            C:\Users\helloworld\Desktop\test.bat

A            C:\Users\helloworld\Desktop\test.txt

A            C:\Users\helloworld\Desktop\test.vbs

A            C:\Users\helloworld\Desktop\VB6企业版.EXE.lnk

A            C:\Users\helloworld\Desktop\Windows Live Writer.lnk

A            C:\Users\helloworld\Desktop\两大搜索引擎集合器.bat

     R       C:\Users\helloworld\Desktop\傲游浏览器2.lnk
复制代码
可以看出,显示了桌面上所有的文件属性,同时也列出了所有文件的完全路径(思考:由后面这一点,同学们可以想到什么呢?)
/S 处理当前文件夹及其所有子文件夹中的匹配文件。
复制代码
/s,全英文subdirectory,意为:子目录。(可以看出,其实很多参数都是相通的,dir 中的 /s,rd中的 /s皆是“子目录”的意思)
既然有/s参数,那么attrib自然默认也是不会显示“子文件夹中文件的属性”。
我的桌面上其实还有4个文件夹,其中有个“520”文件夹,看看加上/s后能否把里面的内容显示出来。

例如:
C:\Users\helloworld\Desktop>attrib /s

A            C:\Users\helloworld\Desktop\520\12\world_hello.txt

A            C:\Users\helloworld\Desktop\520\1.bat

A       I    C:\Users\helloworld\Desktop\520\1.doc

A            C:\Users\helloworld\Desktop\520\115优蛋.lnk

A            C:\Users\helloworld\Desktop\520\360安全桌面.lnk

A            C:\Users\helloworld\Desktop\520\code.exe - 快捷方式.lnk

A            C:\Users\helloworld\Desktop\520\ComicAiII.exe - 快捷方式.lnk

A            C:\Users\helloworld\Desktop\520\DeskSpace.lnk

A            C:\Users\helloworld\Desktop\520\ezproxy.exe - 快捷方式.lnk

A            C:\Users\helloworld\Desktop\520\FinalData 2.0 OEM.lnk

A            C:\Users\helloworld\Desktop\520\Format Factory.lnk

A            C:\Users\helloworld\Desktop\520\KKJDock.exe.lnk

A            C:\Users\helloworld\Desktop\520\mhdesk.exe.lnk

A            C:\Users\helloworld\Desktop\520\PPTV在线影视.lnk

A            C:\Users\helloworld\Desktop\520\PP游戏世界.lnk

A            C:\Users\helloworld\Desktop\520\QQ影音.lnk

A            C:\Users\helloworld\Desktop\520\WPS文字.lnk

A            C:\Users\helloworld\Desktop\520\WPS演示.lnk
复制代码
显示出来了,而且最先显示的就是520文件夹中的文件属性。
/D 也处理文件夹。
复制代码
/d,全英文directory,意为:目录(dos时代的旧称,windows称文件夹)。
还是逆向的思考,既然有这个参数,那么attrib自然默认也是不显示文件夹的。
加上/d参数会怎么样呢?
例如:
C:\Users\helloworld\Desktop>attrib /s /d

A            C:\Users\helloworld\Desktop\520\12\world_hello.txt

A            C:\Users\helloworld\Desktop\520\1.bat

A       I    C:\Users\helloworld\Desktop\520\1.doc

A            C:\Users\helloworld\Desktop\520\115优蛋.lnk

             C:\Users\helloworld\Desktop\520\12

A            C:\Users\helloworld\Desktop\520\360安全桌面.lnk

A            C:\Users\helloworld\Desktop\520\code.exe - 快捷方式.lnk

A            C:\Users\helloworld\Desktop\520\ComicAiII.exe - 快捷方式.lnk

A            C:\Users\helloworld\Desktop\520\DeskSpace.lnk

A            C:\Users\helloworld\Desktop\520\ezproxy.exe - 快捷方式.lnk

A            C:\Users\helloworld\Desktop\520\FinalData 2.0 OEM.lnk

A            C:\Users\helloworld\Desktop\520\Format Factory.lnk

A            C:\Users\helloworld\Desktop\520\KKJDock.exe.lnk

A            C:\Users\helloworld\Desktop\520\mhdesk.exe.lnk

A            C:\Users\helloworld\Desktop\520\PPTV在线影视.lnk

A            C:\Users\helloworld\Desktop\520\PP游戏世界.lnk

A            C:\Users\helloworld\Desktop\520\QQ影音.lnk

A            C:\Users\helloworld\Desktop\520\WPS文字.lnk

A            C:\Users\helloworld\Desktop\520\WPS演示.lnk

A            C:\Users\helloworld\Desktop\520\WPS表格.lnk

A            C:\Users\helloworld\Desktop\520\YodaoDict.exe.lnk
复制代码
看出差别来了吗?
             C:\Users\helloworld\Desktop\520\12
复制代码
这是“520文件夹”下的“12文件夹”,没加/d时可是没有显示的。

以上都是显示,但是如何设置文件的属性呢?
请听我慢慢道来:
但凡文件,皆有属性。只读、存档、系统、隐藏,在attrib中就为r、a、s、h,其英文全称read、archives、system、hide。
+为加,-为减。加,便赋予属性,减,便删除属性。

以上说了那么多,其实真正常用的属性只有 h,和 h结合s。

给文件夹520添加隐藏属性。
例如:
C:\Users\helloworld\Desktop>attrib +h 520
复制代码
效果:

刷性之后,520就消失了。

这时候就删除其隐藏属性。
例如:
C:\Users\helloworld\Desktop>attrib -h 520
复制代码
效果:

系统属性配合隐藏属性使用,可以加强隐藏的效果。
例如:
C:\Users\helloworld\Desktop>attrib +s +h 520

C:\Users\helloworld\Desktop>attrib  -h 520

未重置系统文件 - C:\Users\helloworld\Desktop\520
复制代码
怎么解除这种加强隐藏的效果呢?
例如:
C:\Users\helloworld\Desktop>attrib -s -h 520
复制代码
扩展阅读:

1.其实,我一开始也不知道attrib可以光杆使用,但是我一看到attrib的语法,我就知道了。
这里就教教大家看命令语法的小知识:
ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I]

       [drive:][path][filename] [/S [/D] [/L]]
复制代码
除了attrib没有框在中括号中,其它的所有参数都在中括号中,这点信息就告诉了我,attrib可以光杆使用。
[]中的信息都是可选的参数,(可选参数:就是可以有,也可以没有)。
[|]这样的符号代码,虽然是可选参数,但只能二选其一,当然也可以是多选其一,且只能选一个。
C:\Users\helloworld\Desktop>attrib +h -h 520

参数格式不正确 -
复制代码
2.具有系统属性(+s)的文件、文件夹,不能随意改变其他属性(-a 或-h),需要改变其系统属性才能改变其他属性(-a -s或-h -s)。感谢yyykkkyyyy。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: