OK, keterampilan PS terbatas dan Anda ingin mengotomatiskan mengacaukan registri.
Uhhhhh ... kamu yakin? 8-}
Semua itu dikatakan.
Apa yang Anda tunjukkan di sini baik-baik saja dengan pengecualian bahwa Anda tidak menunjukkan nilai yang akan ditetapkan atau perintah untuk mengatur kunci registri.
Cmdlet ini adalah yang dapat Anda gunakan untuk berurusan dengan registri.
Get-Command -CommandType Cmdlet -Name '*item*'
CommandType Name ModuleName
----------- ---- ----------
Cmdlet Clear-Item Microsoft.PowerShell.Management
Cmdlet Clear-ItemProperty Microsoft.PowerShell.Management
Cmdlet Copy-Item Microsoft.PowerShell.Management
Cmdlet Copy-ItemProperty Microsoft.PowerShell.Management
Cmdlet Get-ChildItem Microsoft.PowerShell.Management
Cmdlet Get-Item Microsoft.PowerShell.Management
Cmdlet Get-ItemProperty Microsoft.PowerShell.Management
Cmdlet Move-Item Microsoft.PowerShell.Management
Cmdlet Move-ItemProperty Microsoft.PowerShell.Management
Cmdlet New-Item Microsoft.PowerShell.Management
Cmdlet Remove-Item Microsoft.PowerShell.Management
Cmdlet Remove-ItemProperty Microsoft.PowerShell.Management
Cmdlet Set-Item Microsoft.PowerShell.Management
Cmdlet Set-ItemProperty Microsoft.PowerShell.Management
Pastikan untuk melihat file bantuan dan contohnya sebelum digunakan juga.
https://docs.microsoft.com/en-us/powershell/scripting/getting-started/cookbooks/working-with-registry-entries?view=powershell-6
https://blogs.technet.microsoft.com/heyscriptingguy/2015/04/02/update-or-add-registry-key-value-with-powershell
PSRemoteRegistry 1.0.0.0
Modul ini berisi fungsi untuk membuat, mengubah, atau menghapus subkunci dan nilai registri pada komputer lokal atau jarak jauh.
https://www.powershellgallery.com/packages/PSRemoteRegistry/1.0.0.0
https://stackoverflow.com/questions/28076128/powershell-export-multiple-keys-to-one-reg-file
Seperti yang kita ketahui mengacaukan registri bisa sangat menyakitkan jika Anda tidak hati-hati. Jadi, cadangkan dulu sehingga Anda dapat memulihkan jika terjadi bencana atau setidaknya ke titik pemulihan sistem, VM checkpoint / snapshot.
Jadi, inilah sedikit modifikasi pada kode yang Anda posting, tetapi jangan menganggap ini sebagai final karena Anda perlu membuat keputusan tentang tindakan apa yang perlu diambil dan bagaimana caranya.
Get-ChildItem "Registry::HKCR" -Recurse -Force `
| where { $_.Name -match 'vlc.'}`
| ForEach-Object {
try {
'Target key to modify / export / whatever'
$_.Name
# 'Registry code here' -WhatIf # remove the whatif if you are sure you are good with what you have
}
catch {
Write-Warning -Message 'Key not accessible'
$_.Name
}
}