如何删除只读属性文件上使用PowerShell?
-
23-08-2019 - |
题
我怎么可以删除只读属性文件,使用PowerShell(1.0版)剧本吗?
解决方案
可以使用Set-ItemProperty
:
Set-ItemProperty file.txt -name IsReadOnly -value $false
或更短:
sp file.txt IsReadOnly $false
其他提示
$file = Get-Item "C:\Temp\Test.txt"
if ($file.attributes -band [system.IO.FileAttributes]::ReadOnly)
{
$file.attributes = $file.attributes -bxor [system.IO.FileAttributes]::ReadOnly
}
上述代码段是取自这个 文章
更新 使用 基思*希尔 执行情况的评论(我已经测试了这个,它不工作),这种变为:
$file = Get-Item "C:\Temp\Test.txt"
if ($file.IsReadOnly -eq $true)
{
$file.IsReadOnly = $false
}
虽然它不是的本地的PowerShell中,人们仍然可以使用简单的 ATTRIB 以这个命令:
attrib -R file.txt
或可以简单地使用:
get-childitem *.cs -Recurse -File | % { $_.IsReadOnly=$false }
以上将在当前文件夹的子树中的所有的.cs文件。如果您需要其他类型的包括再简单地调整“*的.cs”您的需求。
如果你碰巧使用 PowerShell的社区扩展:
PS> Set-Writable test.txt
PS> dir . -r *.cs | Set-Writable
# Using alias swr
PS> dir . -r *.cs | swr
可以做像这样相反:
PS> dir . -r *.cs | Set-ReadOnly
# Using alias sro
PS> dir . -r *.cs | sro
Shell("net share sharefolder=c:\sharefolder/GRANT:Everyone,FULL")
Shell("net share sharefolder= c:\sharefolder/G:Everyone:F /SPEC B")
Shell("Icacls C:\sharefolder/grant Everyone:F /inheritance:e /T")
Shell("attrib -r +s C:\\sharefolder\*.* /s /d", AppWinStyle.Hide)
感谢任何人谁是帮助解决了一些问题......并帮助这个代码
此代码为我工作..到一个文件夹共享读取每一个和写入权限 可以在.NET使用此
不隶属于 StackOverflow