rekisterimerkintöjen kanssa työskentely

  • 06/05/2017
  • 5 minutes to read
  • j
  • s
  • k
  • m
  • b

koska rekisterimerkinnät ovat avainten ominaisuuksia, eikä niitä sellaisenaan voi suoraan selata, on otettava hieman erilainen lähestymistapa heidän kanssaan työskennellessä.

rekisterimerkintöjen listaaminen

rekisterimerkintöjen tarkasteluun on monia eri tapoja. Yksinkertaisin tapa on saada kunnollisettunnimet liittyvät avain. Jos haluat nähdä esimerkiksi rekisteriavaimen tietueiden nimetHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion, käytä Get-Item. Rekisteriavaimella on ominaisuus, jonka yleisnimi on ”ominaisuus”, joka on luettelo avaimen rekisterimerkinnöistä.Seuraava komento valitsee omaisuuden ominaisuuden ja laajentaa kohteita niin, että ne ovatdisplayed luettelossa:

DevicePathMediaPathUnexpandedProgramFilesDirCommonFilesDirProductId

nähdäksesi rekisterimerkinnät luettavammassa muodossa, käytä Get-ItemProperty:

Get-ItemProperty -Path Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

avaimen Windowsin Powershelliin liittyvät ominaisuudet ovat kaikki etuliitteessä ”PS”, kuten asPSPath, PSParentPath, pschildname ja psprovider.

voit käyttää

*.*

merkintää viitataksesi nykyiseen sijaintiin. Voit käyttääSet-Locationmuuttaaksesi ensin nykyiseen rekisterisäiliöön:

Set-Location -Path Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

vaihtoehtoisesti voi käyttää sisäänrakennettua HKLM Psdriveä Set-Location:

Set-Location -Path hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion

voit sitten käyttää *.* notaatiota nykyinen sijainti ominaisuuksien luetteloimiseksi määrittelemättä koko polkua:

Get-ItemProperty -Path .
...DevicePath : C:\WINDOWS\infMediaPathUnexpanded : C:\WINDOWS\MediaProgramFilesDir : C:\Program Files...

polkulaajennus toimii samalla tavalla kuin tiedostojärjestelmän sisällä, joten tästä sijainnista saat ItemProperty-listauksen HKLM:\SOFTWARE\Microsoft\Windows\Help käyttämälläGet-ItemProperty -Path ..\Help.

yksittäisen rekisterimerkinnän saaminen

Jos haluat hakea tietyn merkinnän rekisteriavaimesta, voit käyttää yhtä useista mahdollisista tavoista. Tässä esimerkissä Devicepathin arvo on HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion.

käyttämällä Get-ItemProperty, käytä Polkuparametria avaimen nimen määrittämiseen ja sitten nimeä parametri laitteen syötteen nimen määrittämiseen.

Get-ItemProperty -Path HKLM:\Software\Microsoft\Windows\CurrentVersion -Name DevicePath

Tämä komento palauttaa Windowsin normaalit PowerShell-ominaisuudet sekä Devicepathpropertyn.

Huomautus

vaikka Get-ItemProperty on suodatin, Sisällytä ja sulje parametrit, niitä ei voi käyttää suodattamaan ominaisuuden nimen mukaan. Nämä parametrit viittaavat rekisteriavaimiin, jotka ovat itempaatteja eivätkä rekisterimerkintöjä, jotka ovat kohteen ominaisuuksia.

toinen vaihtoehto on käyttää Reg.exe-komentorivityökalu. Apua Regin kanssa.exe, type reg.exe /?komentokehotteella. Jos haluat löytää DevicePath-merkinnän, käytä reg.exe kuten seuraavassa komennossa näkyy:

reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion /v DevicePath

Voit myös käyttää WshShell COM-objektia joidenkin rekisterimerkintöjen etsimiseen, vaikka tämä menetelmä ei toimi suurten binääritietojen kanssa tai sellaisten rekisterimerkintöjen kanssa, jotka sisältävät merkkejä kuten ”\”). Lisää ominaisuuden nimi kohdepolulle \ – erottimella:

(New-Object -ComObject WScript.Shell).RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DevicePath")
%SystemRoot%\inf

yhden rekisterimerkinnän asettaminen

Jos haluat muuttaa tiettyä tietuetta rekisteriavaimessa, voit käyttää yhtä useista mahdollisista tavoista. Tässä esimerkissä muutetaan Polkusyöttöä alle HKEY_CURRENT_USER\Environment. ThePath-merkintä määrittää, mistä suoritettavat tiedostot löytyvät.

  1. hakee Polkusyötteen nykyisen arvon käyttämällä Get-ItemProperty.
  2. Lisää uusi arvo erottaen sen ;.
  3. käytä Set-ItemProperty merkittyä avainta, nimikettä ja arvoa rekisterimerkinnän muuttamiseen.

Huomautus

vaikka Set-ItemProperty on suodatin, Sisällytä ja sulje parametrit, niitä ei voida käyttää suodattamaan ominaisuuden nimen mukaan. Nämä parametrit viittaavat rekisteriavaimiin-jotka ovat itempaatteja—eivätkä rekisterimerkintöihin-jotka ovat kohteen ominaisuuksia.

toinen vaihtoehto on käyttää Reg.exe-komentorivityökalu. Apua Regin kanssa.exe, tyyppi reg.exe /?komentokehotteella.

seuraavassa esimerkissä muutetaan Polkumerkintää poistamalla yllä olevaan esimerkkiin lisätty polku.Get-ItemProperty käytetään edelleen nykyisen arvon hakemiseen, jotta ei tarvitsisi jäsentää stringreverryä reg query. Menetelmien alustaa ja viimeisintä Indexiä käytetään hakemaan viimeinen polku, joka on lisätty Polkusyöttöön.

The operation completed successfully.

luodaan uusia rekisterimerkintöjä

lisätäksesi uuden merkinnän ”PowerShellPath” nykyiseen Versionavaimeen, käytä New-ItemProperty, jossa on avaimen polku, tietueenimi ja tietueenarvo. Tässä esimerkissä otamme arvon Windows PowerShell muuttuja $PSHome, joka tallentaa polun asennushakemistoon Windows PowerShell.

voit lisätä uuden tietueen avaimeen seuraavalla komennolla, ja komento palauttaa myös tiedon uudesta tietueesta:

Propertytypen täytyy olla Microsoftin nimi.Win32.Registryvaluekindin luettelointi jäsen seuraavasta taulukosta:

PropertyType Value Meaning
Binary Binary data
DWord A number that is a valid UInt32
ExpandString A string that can contain environment variables that are dynamically expanded
MultiString A multiline string
String Any string value
QWord 8 bytes of binary data

Huomautus

voit lisätä rekisterisyötteen useisiin paikkoihin määrittelemällä arvoryhmän Path-parametrille:

voit myös korvata olemassa olevan rekisterisyötteen arvon lisäämällä Voimaparametrin mihin tahansaNew-ItemProperty komento.

rekisterimerkintöjen uudelleennimeäminen

PowerShellPath-merkinnän nimeämiseksi muotoon ”PSHome”, käytä Rename-ItemProperty:

Rename-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion -Name PowerShellPath -NewName PSHome

uudelleennimetyn arvon näyttämiseksi lisää Passhru-parametri komentoon.

Rename-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion -Name PowerShellPath -NewName PSHome -passthru

rekisterimerkintöjen poistaminen

sekä PSHome-että PowerShellPath-rekisterimerkintöjen poistamiseksi, käytä Remove-ItemProperty:

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *