How to Remove ReadOnly Attribute on File Using PowerShell?

让人想犯罪 __ 提交于 2019-11-28 04:48:05

You can use Set-ItemProperty:

Set-ItemProperty file.txt -name IsReadOnly -value $false

or shorter:

sp file.txt IsReadOnly $false
MagicAndi
$file = Get-Item "C:\Temp\Test.txt"

if ($file.attributes -band [system.IO.FileAttributes]::ReadOnly)  
{  
  $file.attributes = $file.attributes -bxor [system.IO.FileAttributes]::ReadOnly    
}  

The above code snippet is taken from this article

UPDATE Using Keith Hill's implementation from the comments (I have tested this, and it does work), this becomes:

$file = Get-Item "C:\Temp\Test.txt"

if ($file.IsReadOnly -eq $true)  
{  
  $file.IsReadOnly = $false   
}  

Even though it's not Native PowerShell, one can still use the simple Attrib command for this:

attrib -R file.txt
Mariusz Gorzoch

or you can simply use:

get-childitem *.cs -Recurse -File | % { $_.IsReadOnly=$false }

Above will work for all .cs files in sub-tree of current folder. If you need other types included then simply adjust "*.cs" to your needs.

If you happen to be using the PowerShell Community Extensions:

PS> Set-Writable test.txt
PS> dir . -r *.cs | Set-Writable
# Using alias swr
PS> dir . -r *.cs | swr

You can do the opposite like so:

PS> dir . -r *.cs | Set-ReadOnly
# Using alias sro
PS> dir . -r *.cs | sro
redz
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)

thanks for anybody who are helping to solved some problem...and helping this code

this code is working for me.. to share a folder to every one with read and write permission you can use this in .net

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!