FileSetAttrib

改变一个或多个文件或文件夹的属性. 支持通配符.

FileSetAttrib Attributes , FilePattern, Mode

参数

Attributes

类型: 字符串

要改变的属性. 例如, "+HA-R".

要方便地打开, 关闭或切换属性, 请分别在以下一个或多个属性字母前加上加号(+), 减号(-) 或脱字符(^):

如果属性字母没有前缀符号, 文件属性将被替换为给定的属性. 请参阅示例 #5. 要删除所有属性, 请单独使用 "N".

FilePattern

类型: 字符串

如果省略, 则使用最内层文件循环的当前文件. 否则, 指定单个文件或文件夹的名称, 或通配符模式, 如 "C:\Temp\*.tmp". 如果未指定绝对路径, 则假定 FilePatternA_WorkingDir 中.

Mode

类型: 字符串

如果为空或省略, 则默认仅对文件进行操作, 子目录不被递归. 否则, 请指定一个或更多的下列字母:

错误处理

如果有文件更改失败, 则抛出 Error, 并且它的 Extra 属性设置为失败次数.

如果找到了文件, 则 A_LastError 会被设置为 0, 或上次失败后立即获得操作系统的 GetLastError() 函数的结果. 否则 A_LastError 包含了没有找到文件原因的错误码.

Remarks

此函数无法改变文件的压缩状态.

FileGetAttrib, FileGetTime, FileSetTime, FileGetSize, FileGetVersion, 文件循环

示例

打开所有文件和目录的 "只读" 和 "隐藏" 属性(子目录不会被递归到).

FileSetAttrib "+RH", "C:\MyFiles\*.*", "DF"  ; +RH 等同于 +R+H

切换单个文件夹的 "隐藏" 属性.

FileSetAttrib "^H", "C:\MyFiles"

关闭单个文件的 "只读" 属性并打开 "存档" 属性.

FileSetAttrib "-R+A", "C:\New Text File.txt"

递归 C 驱动器上的所有 .ini 文件并打开它们的 "存档" 属性.

FileSetAttrib "+A", "C:\*.ini", "R"

file2 的属性复制到 file1, 即添加 file2 有的属性, 删除 file2 没有的属性.

FileSetAttrib(FileGetAttrib(file2), file1)