• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >PowerShell > PowerShell设置文件只读、隐藏属性的方法

PowerShell设置文件只读、隐藏属性的方法

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了powershell打开文件,powershell创建文件,powershell 下载文件,powershell 新建文件,powershell程序文件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文介绍一个PowerShell中如何设置文件属性。我们知道文件的属性有只读、隐藏、系统、存档和无内容索引等5个,只读和隐藏用得比较多,另外三个用得比较少。

一、文件的属性

不知道大家有没有用过attrib.exe这个cmd下的小程序,它可以用来设置文件的属性。建议大家先去了解一下这个attrib小程序。可以参考文章:使用attrib设置文件只读、隐藏和系统属性

下面我们来看看如何在PowerShell中设置文件只读、隐藏和系统属性。

我们知道,获取一个文件对象可以使用Get-Item这个cmdlet。但我们来看看下面的操作:
Get-Item : 找不到项 D:\2.txt。
所在位置 行:1 字符: 9
+ get-item <<<<  d:\2.txt
    + CategoryInfo          : ObjectNotFound: (D:\2.txt:String) [Get-Item], IO
   Exception
    + FullyQualifiedErrorId : ItemNotFound,Microsoft.PowerShell.Commands.GetIt
   emCommand
</div>
这个提示似乎很明确的告诉我们,找不到D:\2.txt这个文件。真的没有这个文件吗?不是的!这个文件之前被我设置了隐藏属性的系统属性,待我把它去掉试试。
PS C:\Users\splaybow> attrib -h -s d:\2.txt
PS C:\Users\splaybow> get-item d:\2.txt
    目录: D:\
Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-ar--        2013/11/11     20:04          6 2.txt
</div>
这下子就找到该文件了。另外,大家可以出输出结果中看到Mode这部分,“ar”表示,该文件上还有存档属性和只读属性。我们也可以通过下面的命令来查看文件的属性:
PS C:\Users\splaybow> $file = Get-Item d:\2.txt
PS C:\Users\splaybow> $file.Mode
-ar--
</div>
关于文件的五种属性,洪哥就不再介绍了,有兴趣的朋友可以参考attrib的那篇文章。

二、设置文件属性

现在我们测试去掉文件上的只读属性,要用到文件对象的IsReadOnly属性。
PS C:\Users\splaybow> $file.IsReadOnly = $false
PS C:\Users\splaybow> $file.Mode
-a---</div>
从这个结果上看,是不是r(只读)没有了?!要想重新加回来,再把IsReadOnly设置为$true即可。

聪明如洪哥者,一定会想,隐藏属性是不是可以通过$file对象的IsHidden来控制呢?呵呵,我们想错了。要想知道$file对象有哪些属性和方法,可以使用“$file | Get-Member”这个命令来查看。当然,任何对象,我们想知道它有哪些方法和属性,都可以通过“<对象变量> | Get-Memeber”的方式去获取。

不要扯远了,如何设置只读外的其它属性呢,那就只能使用Attributes属性了。且看下面的例子:
PS C:\Users\splaybow> $file.Attributes = "Readonly","system","notcontentindexed","hidden","archive"
PS C:\Users\splaybow> $file.mode
-arhs
PS C:\Users\splaybow> $file.Attributes
ReadOnly, Hidden, System, Archive, NotContentIndexed
</div>
上面的例子展示如何设置文件的只读属性、隐藏属性、系统属性、存档属性、无内容索引属性等。需要注意的是Mode属性和Attributes属性有一点区别,那就是Mode中貌似不会显示出无内容存档属性(I)来。

三、修改文件属性

上面讲的是一次性为文件设置一组属性,这样很简单,但也很粗暴。如果只想给他增加一个ReadOnly属性,其它的原属性不变,怎么操作呢?

在PowerShell中,可以将文件的属性当作一个二进制数组,使用二进制的按位或(bOR)操作符来运算一下就好了。且看例子:
PS C:\Users\splaybow> $file = Get-Item d:\2.txt
PS C:\Users\splaybow> $file.Attributes="hidden"
PS C:\Users\splaybow> $readonly = [System.IO.FileAttributes] "ReadOnly"
PS C:\Users\splaybow> $file.Attributes=$file.Attributes -bor $readonly
PS C:\Users\splaybow> $file.Attributes
ReadOnly, Hidden
</div>
上面例子中,文件本身只有一个隐藏属性,后面给它添加了一个只读属性,结果变更为隐藏、只读双属性。如果是要去掉其中一个属性呢?可惜没有按位非的操作符,怎么实现就留给大家思考。

关于PowerShell设置文件只读、隐藏和系统属性,本文就介绍这么多,希望对您有所帮助,谢谢!

</div>

您可能想查找下面的文章:

  • Powershell中显示隐藏文件的方法
  • PowerShell实现在多个文件中检索关键字功能
  • Powershell小技巧之从文件获取系统日志
  • Powershell小技巧--将文件夹中的大文件分成若干份
  • Powershell小技巧之轻松从网上下载文件
  • PowerShell遍历文件、文件夹的方法
  • PowerShell读取文件内容、替换文件内容、读取限定行的例子
  • PowerShell统计文件夹下文件个数的方法
  • PowerShell移动目录中指定文件的方法(非全部文件)
  • PowerShell中按文件后缀过滤的实现代码

相关文章

  • PowerShell批量文件重命名操作实例
  • WMI入门教程之怎么使用WMI?
  • PowerShell中字符串分行显示的两种方法技巧
  • powershell操作word详解
  • PowerShell函数中的开关参数介绍和创建实例
  • PowerShell入门教程之访问.Net程序集、COM和WMI实例
  • PowerShell查看Windows功能选项的方法
  • Powershell实现导入安装证书功能脚本分享
  • PowerShell打开或关闭光驱
  • PowerShell中使用GetType获取变量数据类型

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Powershell实现按类型排序
    • PowerShell脚本性能优化技巧总结
    • PowerShell中按修改时间查找文件的方法
    • Powershell 查找用户的主SMTP地址
    • PowerShell显示隐藏文件和系统文件的方法
    • PowerShell中使用Get-Date获取日期时间并格式化输出的例子
    • Windows Powershell使用哈希表
    • PowerShell脚本实现创建桌面快捷方式的方法
    • 探索PowerShell(十五) 引号与转义字符
    • PowerShell数组结合switch语句产生的奇特效果介绍

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有