attrib指令用于修改文件的属性.文件的常见属性有:只读.存档.隐藏和系统.
只读属性是指文件只可以做读的操作.不能对文件进行写的操作.就是文件的写保护.
存档属性是用来标记文件改动的.即在上一次备份后文件有所改动.一些备份软件在备份的时候会只去备份带有存档属性的文件.
隐藏属性顾名思义即为隐藏文件.在通常情况下.在资源管理器中不显示带有隐藏属性的文件.
系统属性是指标注文件为系统文件.是系统需要调用的文件.
attrib指令的格式和常用参数为
ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [[drive:] [path] filename] [/S [/D]]
+ 设置属性。
- 清除属性。
R 只读文件属性。
A 存档文件属性。
S 系统文件属性。
H 隐藏文件属性。
[drive:][path][filename]
指定要处理的文件属性。
/S 处理当前文件夹及其子文件夹中的匹配文件。
/D 也处理文件夹。
attrib的用途不是很广泛.不过有的时候可以利用它来做一些方便的文件处理.比如U盘中感染了病毒.会在U盘的驱动器里建立多个隐藏的文件.其中会有一个名为autorun.inf的文件.这个文件会为U盘添加一个自动运行的菜单.如果把默认打开操作改成关联病毒程序.那么在你双击U盘的时候.就会感染U盘所带的病毒.通常情况下无法看到这些文件就没办法删除.可以用下面的步骤来清除.
以下假设我的U盘驱动器的盘符是L:."/*"与"*/"之间的内容为注释.在运行中敲入CMD确定便可以快速打开系统的命令提示符.运行的快捷键为"WIN"+"R".
C:/Documents and Settings/Administrator>L: /*进入L盘目录*/
L:/>dir/a /*这个指令是查看当前目录全部的文件.包括有隐藏属性的.可以用来查看是否有autorun.inf等文件.*/
L:/>attrib autorun.inf -a -s -r -h /*去掉autorun.inf的四种属性*/
L:/>del autorun.inf /*删除autorun.inf*/
然后拔掉U盘.再一次连接的时候U盘的自动运行菜单就没有了.当然.其他的病毒程序也可以如此操作.如果把autorun.inf换成*.*就可以一次对当前目录下全部文件进行操作了.如:
L:/>attrib *.* -a -s -r -h
Attrib
显示、设置或删除指派给文件或目录的只读、存档、系统以及隐藏属性。如果在不含参数的情况下使用,则 attrib 命令会显示当前目录中所有文件的属性。
语法
attrib [{+r | -r}] [{+a | -a}] [{+s | -s}] [{+h | -h}] [[Drive:][Path] FileName] [/s[/d]]
参数
+r
设置只读文件属性。
-r
清除只读文件属性。
+a
设置存档属性。
-a
清除存档属性。
+s
设置系统文件属性。
-s
清除系统文件属性。
+h
设置隐藏文件属性。
-h
清除隐藏文件属性。
[Drive:][Path] FileName
指定要显示或更改其属性的目录、文件或文件组的位置和名称。可以在 filename 参数中使用通配符(? 和 *)来显示或更改一组文件的属性。
/s
将 attrib 和任意命令行选项应用到当前目录及其所有子目录中的匹配文件。
/d
将 attrib 和任意命令行选项应用到目录。
/?
在命令提示符下显示帮助。
注释
• 使用文件组
可以在 FileName 参数中使用通配符(? 和 *)来显示或更改一组文件的属性。如果文件设置了系统或隐藏属性,则为了更改该文件的其他属性,您必须首先清除其系统或隐藏属性。
• 使用存档属性
存档属性(即 +a)可标明那些最近一次备份以来发生了变动的文件。xcopy 命令使用存档属性。有关存档属性和 xcopy 的更多信息,请查看“相关主题”。
• 故障恢复控制台提供了带有不同参数的 attrib 命令。
示例
要显示当前驱动器上名为 News86 的文件的属性,请键入:
attrib news86
要将只读属性指派给名为 Report.txt 的文件,请键入:
attrib +r report.txt
对插在 B 驱动器中的磁盘,要将其 /Public/Jones 目录和 /Public/Jones 目录的任何子目录中的文件的只读属性删除,请键入:
attrib -r b:/public/jones/*.* /s
考虑这样一种情形,对于 A 驱动器中的磁盘,您希望创建一种联系,让某个磁盘包含其默认目录下的全部文件(除了扩展名为 .bak 之外的文件)。因为可以使用 xcopy 命令只复制那些用存档属性标记的文件,所以对于要复制的文件,需要为它们设置存档属性。首先需要为驱动器 A 中的所有文件设置存档属性。其次,对于扩展名为 .bak 的文件,要清除其存档属性。例如,请键入:
attrib +a a:*.* attrib -a a:*.bak
下一步,使用 xcopy 命令将文件从 A 驱动器中的磁盘复制到 B 驱动器中的磁盘上。在下面命令中使用的 /a 命令行选项使 xcopy 命令仅复制那些标记有存档属性的文件。例如,请键入:
xcopy a:b:/a
如果需要 xcopy 命令在复制文件后清除每个文件的存档属性,请使用 /m 命令行选项,而不是使用 /a。例如,请键入:
xcopy a:b:/m
ATTRIB
-------------------------------------------------------------
显示或修改文件的属性。
这个命令对文件或目录的只读(Read-Only)、归档(Archive)、系统(System)和隐藏(Hidden)属性进行显示、设置或删除。
语法 :
ATTRIB [+R|-R] [+A|-A] [+S|-S] [+H|-H][[drive:][path]filename] [/S]
要显示当前目录中所有文件的全部属性,可用命令:
ATTRIB
参数:
[drive:][path]filename
指定要处理的文件名及其所在驱动器字母、路径名。
开关项:
+R 设置只读文件属性
-R 清除文件的只读属性
+A 设置文件归档属性
-A 清除文件归档属性
+S 设置文件为一系统文件
-S 清除系统文件属性
+H 设置文件为一隐藏文件
-H 清除隐藏文件属性
/S 对当前目录及其所有子目录中的文件进行操作
相关命令:
有关拷贝不同属性的文件和目录的详细信息,请参见 <XCOPY>命令。
-------------------------------------------------------------
ATTRIB─注解
隐藏属性和系统属性组合
某文件如果既具有隐藏属性又具有系统属性,可用一条ATTRIB命令同时删去这两个属性。例如,要删去RECORD.TXT文件的隐藏和系统属性,可敲入:
ATTRIB -S -H RECORD.TXT
ATTRIB施用于一组文件
在文件参数中运用通配符(?和*),可同时显示和改变一组文件属性。如果文件带有系统或隐藏属性,必须先将其清除,才能改变该文件的其它属性。
改变目录属性
可对目录进行属性显示或修改。ATTRIB用于目录,必须明确地给出目录名,而不能用通配符。例如,要隐藏目录C:/SECRET,可输入命令:
ATTRIB +H C:/SECRET
下面这个命令只对文件起作用,不影响目录
ATTRIB +H C:*.*
查看归档属性
归档属性(a)用来对自上次备份后又改变了的文件作标记。MSBACKUP、RESTORE和XCOPY命令要用到这些归档属性。有关归档属性的详细信息,请参见:
<MSBACKUP>, <RESTORE>和 <XCOPY>
-------------------------------------------------------------
ATTRIB─例子
下列命令,显示当前驱动器上名为NEWS86的文件属性:
attrib news86
下列命令,将只读属性赋给文件REPORT.TXT:
attrib +r report.txt
下列命令,从存在B盘上目录/PUBLIC/JONES及其子目录下的文件的文件属性中删去只读属性:
attrib -r b:/public/jones/*.* /s
作为最后一个例子,假设您想操作A盘的默认目录下的所有文件(.BAK文件除外)。因为要用<XCOPY>拷贝那些标以归档属性的文件,故需对您想拷贝的文件设置归档属性。这可用下面的两条命令办到,它先为A驱的所有文件设置归档属性,再删去那些带.BAK扩展名的文件的归档属性:
attrib +a a:*.*
attrib -a a:*.bak
接着,用XCOPY命令将A盘的文件备份到B驱磁盘中。/A开关指示XCOPY仅对带归档属性的文件进行备份:
xcopy a: b: /a
要使XCOPY在每拷贝完一个文件后删去该文件的归档属性,只需把开关/A换成/M,例如:
xcopy a: b: /m