powershell - 如何删除windows中文件夹的隐藏属性?
问题描述
我错误地将 C:\Users\User 变成了一个隐藏文件夹。现在,我的很多程序都没有运行。我什至无法打开文件资源管理器。我设法在管理员模式下打开了 powershell,但能够使用 ls - Force 查看隐藏的文件夹。但是,我不知道如何取消隐藏它们。如何删除隐藏属性以使文件夹的模式从 d--h-- 更改为 d---?
解决方案
正如Lee_Dailey 指出的那样,您可以编辑Attributes
相应DirectoryInfo
对象的属性值。
由于Attributes
它是一个Flags
枚举(或位字段,如果你愿意的话),删除标志的最简单方法是使用位运算符:
$folder = Get-Item C:\Users\User -Force
$folder.Attributes = $folder.Attributes -band -bnot [System.IO.FileAttributes]::Hidden
这会将 的值设置Attributes
为它已经是的值,但不包括Hidden
标志,无论它是否已设置
推荐阅读
- symfony - Symfony 4:如何在防火墙中为用户/管理员提供多个提供者?
- f# - 当调用的函数有多个参数时,如何在 F# 中使用 list.filter?
- javascript - 获取自动递增的 id 以返回我的 POST 请求?
- visual-studio - 如何在 Visual Studio 2019 中重命名生成输出文件
- bash - 我想要一个 for 循环脚本在每个编号的子目录(1-400)中执行一些命令
- cypress - 带有域选项的 cy.setCookies() 会导致错误
- ilog - JRules 决策表的限制
- excel - SAS ODS 是否支持 Excel 数组公式 (CSE-Formulas)?
- typescript - Why I got an error type assertion on object literals is forbidden, use a type annotation instead.tslint(no-object-literal-type-assertion)?
- android - Android 如何:获取 JSONObject 和 JSONArray