下面的例子里, PowerShell修改了注冊(cè)表鍵值, 完成了Security loop disable, 和loopbackcheck disable.
復(fù)制代碼 代碼如下:
#Security loop disable so that you can look at it on the same machine
if(($gchn = Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\" -Name "BackConnectionHostNames" -ea SilentlyContinue) -eq $null){
New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\" -PropertyType MultiString -Value "$url" -Name "BackConnectionHostNames"
}else{
Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\" -Name "BackConnectionHostNames" -Value ($gchn.BackConnectionHostNames+" $url")
}
#disable loobback check
if((Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\" -Name "DisableLoopbackCheck" -ea SilentlyContinue) -eq $null){
New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\" -PropertyType DWORD -Value "1" -Name "DisableLoopbackCheck"
}
實(shí)例給大家了,下面分享一些powershell操作注冊(cè)表的方法吧
訪問(wèn)注冊(cè)表鍵值
在PowerShell中,用戶可以通過(guò)類似于HKCU:(作為HKEY_CURRENT_USER)和HKLM:(代表HKEY_LOCAL_MATCHINE)的虛擬驅(qū)動(dòng)器訪問(wèn)注冊(cè)表鍵值。
如:Dir Registry::HKEY_LOCAL_MACHINE\Software
通過(guò)這種方式用戶可以很容易的復(fù)制、粘貼注冊(cè)表內(nèi)的鍵值,用戶可以通過(guò)下面的命令獲取已經(jīng)注冊(cè)的文件后綴:
dir Registry::HKEY_CLASSES_ROOT\.* -name | Sort-Object
讀取注冊(cè)表鍵值
在PowerShell中,用戶能夠以虛擬驅(qū)動(dòng)器的形式來(lái)處理注冊(cè)表的內(nèi)容
下面的Get-RegidtryValues函數(shù)列舉存儲(chǔ)在一個(gè)注冊(cè)表鍵值下的所有鍵值,完整代碼如下所示:
function Get-RegistryValues($key) {
(Get-Item $key).GetValueNames()
}
Get-RegistryValues HKLM:\Software\Microsoft\Windows\Currentversion
Get-RegistryValue讀取任意注冊(cè)表鍵值并返回其內(nèi)容,完整代碼如下所示:
function Get-RegistryValue($key, $value) {
(Get-ItemProperty $key $value).$value
}
Get-RegistryValue ' HKLM:\Software\Microsoft\Windows\Currentversion' `
SM_GamesName
寫入注冊(cè)表鍵值
添加或修改注冊(cè)表鍵值在PowerShell中也是很方便的就可以完成的,下面創(chuàng)建名為Set-RegistryValue函數(shù)用來(lái)操作注冊(cè)表鍵值,以下是完整的代碼:
function Set-RegistryValue($key, $name, $value, $type="String") {
if ((Test-Path $key) -eq $false) { md $key | Out-Null }
Set-ItemProperty $key $name $value -type $type
}
Set-RegistryValue HKCU:\Software\TestABC myValue Hello
Set-RegistryValue HKCU:\Software\TestABC myValue 12 Dword
Set-RegistryValue HKCU:\Software\TestABC myValue `
([Byte[]][Char[]]"Hello") Binary
移除注冊(cè)表鍵值
通過(guò)Remove-Item刪除目標(biāo)注冊(cè)表鍵,函數(shù)Remove-RegistryKey的完整代碼如下所示:
function Remove-RegistryKey($key) {
Remove-Item $key -Force
}
通過(guò)Remove-ItemProperty函數(shù)刪除注冊(cè)表值,完整的代碼如下所示:
function Remove-RegistryValue($key, $value) {
Remove-ItemProperty $key $value
}
您可能感興趣的文章:- Powershell 查詢 Windows 日志的方法
- Powershell 查找用戶的主SMTP地址
- powershell解決win10開(kāi)始菜單和通知中心無(wú)法打開(kāi)
- Powershell 獲取特定的網(wǎng)頁(yè)信息的代碼
- Powershell錯(cuò)誤處理之what-if
- PowerShell 4.0實(shí)現(xiàn)自動(dòng)化設(shè)置服務(wù)器
- 揭秘PowerShell 5.0新特性和新功能
- Windows 8 中的 PowerShell 3.0
- PowerShell使用小技巧分享
- PowerShell用戶認(rèn)證Function實(shí)例代碼