Mag*_*ndi 97 powershell scripting powershell-1.0
如何使用PowerShell(版本1.0)脚本删除文件上的ReadOnly属性?
Joe*_*oey 143
你可以使用Set-ItemProperty:
Set-ItemProperty file.txt -name IsReadOnly -value $false
Run Code Online (Sandbox Code Playgroud)
或更短:
sp file.txt IsReadOnly $false
Run Code Online (Sandbox Code Playgroud)
Mag*_*ndi 16
$file = Get-Item "C:\Temp\Test.txt"
if ($file.attributes -band [system.IO.FileAttributes]::ReadOnly)
{
$file.attributes = $file.attributes -bxor [system.IO.FileAttributes]::ReadOnly
}
Run Code Online (Sandbox Code Playgroud)
上面的代码片段来自本文
更新 使用Keith Hill在评论中的实现(我已经测试了它,它确实有效),这变为:
$file = Get-Item "C:\Temp\Test.txt"
if ($file.IsReadOnly -eq $true)
{
$file.IsReadOnly = $false
}
Run Code Online (Sandbox Code Playgroud)
Sco*_*aad 15
即使它不是Native PowerShell,仍然可以使用简单的Attrib命令:
attrib -R file.txt
Run Code Online (Sandbox Code Playgroud)
小智 8
或者你可以简单地使用:
get-childitem *.cs -Recurse -File | % { $_.IsReadOnly=$false }
Run Code Online (Sandbox Code Playgroud)
以上将适用于当前文件夹的子树中的所有.cs文件.如果您需要其他类型,只需根据您的需要调整"*.cs".
如果您碰巧使用PowerShell社区扩展:
PS> Set-Writable test.txt
PS> dir . -r *.cs | Set-Writable
# Using alias swr
PS> dir . -r *.cs | swr
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
PS> dir . -r *.cs | Set-ReadOnly
# Using alias sro
PS> dir . -r *.cs | sro
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
69509 次 |
| 最近记录: |