Kā izmantot PowerShell, lai lasītu reģistra vērtību

2021. gada 24. jūnijs 14116 Skati Kā izmantot PowerShell, lai lasītu reģistra vērtību

Šajā S zonā Viktors māca, kā izmantot PowerShell, lai nolasītu reģistra vērtību.





Rokasgrāmata sākas ar mācībām, kā formatēt reģistra ceļu, lai to izmantotu programmā PowerShell. Jūs arī uzzināsit, kā vislabāk kopēt reģistra atslēgu izmantošanai programmā PowerShell.



Visbeidzot, ceļvedis piedāvā 10 piemērus ar dažādiem veidiem, kā izmantot PowerShell reģistra vērtību lasīšanai.

Ceļvedī ir dažādas tēmas un piemēri. Ja vēlaties lasīt konkrētu tēmu vai piemēru, tālāk izvērsiet vienumu Pārlūkot ziņu tēmas un noklikšķiniet uz tēmas.



Pārlūkojiet ziņu tēmas



Kā formatēt PowerShell reģistra ceļus

Kā izmantot PowerShell, lai lasītu reģistra vērtību — kā formatēt PowerShell reģistra ceļus

Pirms es mācu jums, kā izmantot PowerShell, lai lasītu reģistra vērtību, es vēlos jums iemācīt formatēt reģistra ceļus, lai strādātu ar PowerShell.

Windows reģistrā ir 5 augstākā līmeņa atslēgas (saknes atslēgas):



  1. HKEY_LOCAL_MACHINE
  2. HKEY_CURRENT_CONFIG
  3. HKEY_CLASSES_ROOT
  4. HKEY_USERS
  5. HKEY_CURRENT_USER

Lai nolasītu reģistra vērtību, norādiet atslēgu kā ceļu laukā Get-ItemProperty vai Iegūt vienumu Cmdlets. Ir divi veidi, kā formatēt reģistra ceļu:



Formāts ar pilnu reģistra atslēgas ceļu

Ievadiet Reģistrs:: seko pilns ceļš uz reģistru. Piemēram, lai norādītu HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion , izmantošu Reģistrs::HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion

Formāts ar saīsināto reģistra atslēgas ceļu

Varat arī ievadīt augstākā līmeņa reģistra atslēgas (saknes atslēgas) saīsinājumu, kam seko kols (:), pēc tam pilnu ceļu uz reģistra atslēgu (bez saknes nosaukuma).

Atgādinājumam, šeit ir saknes atslēgu saīsinājumi:

HKEY_LOCAL_MACHINE — HKLM
HKEY_CURRENT_CONFIG — HKCC
HKEY_CLASSES_ROOT — HKCR
HKEY_USERS — HKU
HKEY_CURRENT_USER — HKCU

Tāpēc, lai norādītu reģistra ceļu, HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion ar šo otro metodi tiks rakstīts - HKLM:SOFTWAREMicrosoftWindowsCurrentVersion

Ņemiet vērā: lai gan saknes nosaukums ir noņemts, pirmā slīpsvītra () tika saglabāta.

Kā nokopēt reģistra atslēgas nosaukumu

Vēl viena lieta, pirms turpinu — labāk ir kopēt ceļu uz reģistra atslēgu, kuru vēlaties lasīt, izmantojot PowerShell, nevis rakstīt to manuāli.

Lai kopētu reģistra atslēgu, ar peles labo pogu noklikšķiniet uz atslēgas un atlasiet Kopējiet atslēgas nosaukumu . Šeit ir piemērs.

Kā izmantot PowerShell, lai lasītu reģistra vērtību — kā formatēt PowerShell reģistra ceļus

Izmantojiet PowerShell, lai lasītu reģistra vērtību: piemēri

Izmantojiet PowerShell, lai lasītu reģistra vērtību: piemēri

Tagad, kad zināt, kā formatēt reģistra ceļu izmantošanai ar PowerShell, šajā sadaļā ir sniegti 10 piemēri PowerShell izmantošanai reģistra vērtības nolasīšanai:

Kā atgriezt visas vērtības reģistra atslēgā

Lai atgrieztu visas reģistra atslēgas vērtības, ievadiet tālāk norādīto komandu un nospiediet enter.

maz snitch alternatīva mac
|_+_| Mainiet ceļu uz ceļu reģistra atslēgai, kuras vērtības vēlaties nolasīt. Atcerieties reģistra formatējumu no pēdējās sadaļas.

Komanda atgriezīs visas vērtības norādītajā ceļā. Otrais zemāk redzamais ekrānuzņēmums ir faktiskais reģistra ieraksts.

Ja salīdzina PowerShell rezultātu un reģistra vērtības (otrā rūts), tie ir tieši tādi paši.

Kā atgriezt noteiktu vērtību reģistra atslēgā un saglabāt to mainīgajā

Pēc pēdējās sadaļas komandas šajā sadaļā atgrieza visas vērtības norādītajā reģistra ceļā. Tomēr varat arī izmantot PowerShell, lai lasītu reģistra vērtību, bet atgrieztu noteiktu vērtību.

Ir vairāki veidi, kā to izdarīt.

Pēdējā komanda ( Get-ItemProperty komanda) atgrieza vērtības, kas parādītas zemāk esošajā ekrānuzņēmumā.

sakne sm-n920v
Šim attēlam ir tukšs alt atribūts; tā faila nosaukums ir image-74-1024x591.png

Lai atgrieztu vērtību CommonFilesDir , izmantojiet vienu no tālāk norādītajām komandām:

|_+_| |_+_|

Abas komandas atgriež reģistra datus, bez īpašuma nosaukums, CommonFilesDir . Skatiet zemāk redzamo ekrānuzņēmumu:

Visbeidzot, šajā apakšsadaļā varat izmantot PowerShell, lai nolasītu reģistra vērtību un saglabātu vērtību mainīgajā. Piemēram, mēs varam saglabāt reģistra datus pēdējā komandā mainīgajā, ko sauc $RegData .

Šeit ir modificēta komanda:

|_+_|

Tagad, palaižot komandu, tā konsolē neatgriezīs nekādus rezultātus, jo rezultāts tiek saglabāts mainīgajā…

Kā atgriezt noteiktu vērtību reģistra atslēgā un saglabāt to mainīgajā

Tomēr, lai parādītu mainīgajā saglabāto rezultātu, palaidiet mainīgo…

|_+_|

Šeit ir rezultāts programmā PowerShell…

Kā atgriezt reģistra apakšatslēgas nosaukumu

Pēdējā komanda pēdējā pēdējā apakšsadaļā atgrieza gan reģistra atslēgu nosaukumus, gan to datus.

Tomēr dažreiz jūs varat parādīt vārdus bez datiem. Jūs varat izmantot Iegūt vienumu Cmdlet, lai to izdarītu. Skatiet komandu zemāk…

|_+_|

Komanda atgriezīs reģistra atslēgu nosaukumus bez pavadošās kolonnas Dati.

Kā izmantot PowerShell, lai lasītu reģistra vērtību un atgrieztu bināros datus

Šajā piemērā es vēlos parādīt bināro vērtību reģistra atslēgā, ParakstsFonts . Šī atslēga ir atrodama šajā reģistra ceļā HKEY_CURRENT_USERControl PanelDesktopWindowMetrics.

Kā izmantot PowerShell, lai lasītu reģistra vērtību un atgrieztu bināros datus

Pirmais solis ir īpašuma atgriešana ParakstsFonts taustiņu. Tomēr, pirms es to daru, ļaujiet uzskaitīt visus īpašumus HKEY_CURRENT_USERControl PanelDesktopWindowMetrics .

|_+_|

Komanda atgriež rekvizītu kopu, tostarp ParakstsFonts .

Lai atgrieztu tikai rekvizītus, ievadiet iepriekš minēto komandu uz Select-Object…

|_+_|

Šī komanda parāda visus sarakstā esošos rekvizītus.

Kā izmantot PowerShell, lai lasītu reģistra vērtību un atgrieztu bināros datus

Lai parādītu CaptionFont (4. vērtība masīvā), atjauniniet komandu, kā parādīts tālāk, un saglabājiet to mainīgajā…

|_+_|

Pēc tam, lai parādītu reģistra vērtības veidu (šajā gadījumā REG_BINARY), izsauciet GetValueKind Metode sākotnējā komandā, kas saglabāta $key mainīgs. Pēc tam izmantojiet ParakstsFonts (saglabāts $nam e) kā vērtību metodē.

Šeit ir pavēle…

|_+_|

Rezultāts, kā gaidīts, ir binārs.

Tālāk mēs nolasām binārā reģistra tipa vērtības, izmantojot tālāk norādīto komandu PowerShell…

|_+_|

Kā redzat no komandas, vērtība tiek mēģināta vēlreiz, izsaucot GetValue Metode sākotnējā atslēgā, kas saglabāta mapē $key mainīgs. Pēc tam, izmantojot īpašuma nosaukumu, ParakstsFonts sadaļā Metode.

Rezultāts ir skaitļu kopums. Lai redzētu šo vērtību reģistrā, skatiet tālāk redzamo ekrānuzņēmumu.

Kā izmantot PowerShell, lai lasītu reģistra vērtību un atgrieztu bināros datus

Visbeidzot, lai atvieglotu reģistra vērtību uzskaitīšanu, es izveidoju PowerShell funkciju ar nosaukumu Get-RegistryData. Lai lejupielādētu funkciju, noklikšķiniet uz lejupielādēt Get-RegistryData.zip

Pēc lejupielādes izpakojiet failu. Pēc tam palaidiet tālāk norādītās komandas:

|_+_| Aizstājiet C:UsersVictorADownloadsGet-RegistryDataGet-RegistryData ar ceļu uz funkciju savā datorā.

Lai iegūtu vērtības vai datus reģistra ceļa atslēgās, palaidiet tālāk norādīto komandu.

cik kodolu ir mans procesors
|_+_|

Komanda parāda atslēgu nosaukumus, reģistra ceļu un atslēgas veidu. Kolonna Tips ir paslēpta manā ekrānuzņēmumā zemāk.

Alternatīvi, ja nevēlaties rādīt noteiktas galvenes, varat iestatīt Get-RegistryData uz Select-Object.

|_+_|

Izmantojot iepriekš minēto komandu, Get-RegistryData parāda Vārds , Tips , un Dati katras atslēgas norādītajā reģistra ceļā…

Funkcijai Get-RegistryData ir viens parametrs, ko sauc Reģistra ceļš

Kā izmantot PowerShell, lai lasītu reģistra vērtību un atgrieztu masīvu

Lai nolasītu reģistra atslēgu ar PowerShell un atgrieztu vērtību masīvā, izmantojiet Get-ChildItem komandu.

Šī reģistra atslēga, HKEY_CURRENT_USERControl PanelDesktop ir 3 apakšatslēgas. Tālāk esošā komanda atgriež visas apakšatslēgas, to rekvizītus un vērtības:

|_+_|

Šīs vērtības tiek atgrieztas masīvā. Lai apstiprinātu, palaidiet tālāk norādīto komandu…

|_+_|

Šī komanda apstiprina, ka datu tips pēdējā komandā, kas saglabāta mainīgajā $subkeys, ir masīvs.

Kā izmantot PowerShell, lai lasītu reģistra vērtību un atgrieztu masīvuPriekš Get-ChildItem komandu, lai atgrieztu rezultātus masīvā, reģistra atslēgai ir jābūt apakšatslēgām.

Kā izmantot PowerShell, lai iegūtu reģistra vērtību, ja tā pastāv

Piemērs šajā apakšsadaļā ir līdzīgs visiem citiem šīs rokasgrāmatas piemēriem ar nelielu izņēmumu. Nelielas izmaiņas šeit ir izmantot Test-Path, lai pārbaudītu, vai ceļš pastāv.

Pēc tam, ja ceļš pastāv, iegūstiet tā vērtības, izmantojot PowerShell. Šis vienkāršais skripts pārbaudīs, vai pastāv reģistra ceļš HKEY_CURRENT_USERControl PanelDesktop.

Pēc tam, ja tā pastāv, tā nolasīs tās vērtības ar komandu Get-ItemProperty.

|_+_|

Pastāv reģistra atslēga Registry::HKEY_CURRENT_USERControl PanelDesktop. Tātad pēdējā komanda atgrieza savas vērtības.

Apskatīsim, vai mēs norādām reģistra atslēgu, kas neeksistē…

|_+_|

Šoreiz skripts izpilda skriptu Citādi bloks JA paziņojums, apgalvojums.

Kā izmantot PowerShell, lai iegūtu reģistra vērtību, ja tā pastāv

Kā izmantot PowerShell, lai iegūtu un salīdzinātu reģistra vērtības

Kā jūs, iespējams, sapratāt, Iegūt vienumu un Get-ItemProperty komandas nerāda reģistra atslēgu veidus un datus. Tātad, ja vēlaties salīdzināt datus atslēgā, jums ir jāatrod cits veids, kā to izdarīt.

mac popkornu laika hromecast

Apakšsadaļā Kā izmantot PowerShell, lai lasītu reģistra vērtību un atgrieztu bināros datus, es minēju, ka esmu izveidojis funkciju Get-RegistryData.

Lai palaistu šīs apakšsadaļas komandas, ir jālejupielādē funkcija Get-RegistryData.zip. Skatiet apakšsadaļu Kā izmantot PowerShell, lai nolasītu reģistra vērtību un atgrieztu bināros datus.

Varat izmantot šo funkciju, lai atgrieztu norādītā reģistra ceļā esošo apakšatslēgu nosaukumus, veidus un datus.

Piemēram, lai atgrieztu visu HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionExplorer ierakstu nosaukumus, veidus un datus, palaidiet tālāk norādīto komandu...

|_+_|

Ja mēs to aplūkojam tālāk, sakiet, ka es vēlos salīdzināt vērtību Ikona Pasvītrot taustiņu ar citu vērtību, es rīkošos, kā norādīts tālāk.

  1. Caurules izvadi Get-RegistryData komandu a Kur-Objekts komandu un filtrē pēc nosaukuma vienāds Ikona Pasvītrot .
|_+_|

Pēdējā komanda parāda, ka pašreizējā IconUnderline vērtība ir 3.

  1. Ja es vēlos salīdzināt šo vērtību ar citu vērtību, piemēram, 2, es izmantošu tālāk norādītās komandas. Pirmā komanda saglabā komandu iepriekš 1. darbībā mainīgajā.
|_+_|

The JA paziņojums salīdzina pašreizējo vērtību reģistra atslēgā ar 1. Pēc tam, ja tā nav vienāda ar 1, tas izmanto Set-ItemProperty komandu, lai atjauninātu vērtību uz to, ko norādāt laukā Vērtība parametrs.

Kā izmantot PowerShell, lai iegūtu reģistra atslēgu un apakšatslēgas

Ir divas komandas, kuras varat izmantot, lai iegūtu reģistra atslēgas un apakšatslēgas. Jūs varat izmantot Get-ItemProperty vai Get-ChildItem komandu.

Atšķirība starp abām komandām ir tajā, kā norādāt reģistra ceļu.

Lai izmantotu Get-ItemProperty lai iegūtu reģistra atslēgu un apakšatslēgas, pievienojiet atpakaļ slīpsvītru reģistra ceļa beigās. Pēc tam aiz atpakaļgaitas slīpsvītras pievienojiet zvaigznītes aizstājējzīmi.

Piemēram, lai Get-ItemProperty lasītu atslēgas un apakšatslēgas mapē HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionExplorer, palaidiet tālāk norādīto komandu:

|_+_|

No otras puses, izmantojot Get-ChildItem, nav jāpievieno slīpsvītra un aizstājējzīme. Šeit ir piemērs ar komandu Get-ChildItem:

|_+_|

Abas komandas atgriež atslēgas un apakšatslēgas norādītajā reģistra ceļā.

Kā izmantot PowerShell, lai iegūtu reģistra atslēgas LastWriteTime

Pētot šo rakstu, es uzzināju, ka daudzi lietotāji meklē, kā izmantot PowerShell, lai iegūtu pēdējo reizi, kad tika atjaunināta reģistra atslēga.

Tomēr pētījuma laikā es arī atklāju, ka šim uzdevumam nav esošu Cmdlet. Turklāt šķiet, ka vienīgais risinājums ir izveidot pielāgotu PowerShell funkciju.

Par laimi, es atradu funkciju superlietotājs.com . Tātad, man nevajadzēja izveidot savējo!

Lai S zonas lasītājiem būtu viegli, esmu lejupielādējis Add-RegKeyLastWriteTime superlietotājs.com funkcija.

Add-RegKeyLastWriteTime ir pieklājīgi no Cpt.Whale — vietnes superuser.com kopienas līdzstrādnieka

Lai lejupielādētu funkciju no S Zone, noklikšķiniet uz download Add-RegKeyLastWriteTime.zip. Pēc tam izsaiņojiet lejupielādēto ZIP failu.

Visbeidzot atveriet PowerShell un palaidiet tālāk norādītās komandas:

|_+_| Aizstājiet C:UsersVictorADownloadsAdd-RegKeyLastWriteTimeAdd-RegKeyLastWriteTime ar ceļu uz funkciju savā datorā.

Visbeidzot, lai iegūtu pēdējo reģistra atslēgas rakstīšanas laiku, palaidiet tālāk norādīto komandu:

|_+_| HKCU ir HKEY_CURRENT_CONFIG saīsinātais formāts. Es to plaši apspriedu šīs rokasgrāmatas sadaļā Kā formatēt PowerShell reģistra ceļus.

Komanda atgriež pēdējo rakstīšanas laiku visām apakšatslēgām HKEY_CURRENT_USER bāzes reģistra atslēgā…

Kā izmantot PowerShell, lai iegūtu reģistra atslēgu

Kā izmantot PowerShell, lai iegūtu reģistra lielumu

Ja vēlaties redzēt reģistra lielumu operētājsistēmā Windows 10, palaidiet tālāk norādīto komandu:

|_+_|

Komanda atgriež pašreizējo un maksimālo reģistra datu bāzes lielumu.

Tomēr jūs varat parādīt papildu rezultātus, izmantojot uzlabotu komandas versiju. Es atradu kodu, kas to var izdarīt superlietotājs.com .

Markusa (superuser.com kopienas līdzstrādnieka) kods parāda papildu informāciju. Šeit ir kods.

|_+_|

Un rezultāts programmā PowerShell ISE…

Ja ceru, ka man izdevās veiksmīgi iemācīt jums, kā izmantot PowerShell, lai lasītu reģistra vērtību!

Es arī ceru, ka S zona jums bija noderīga. Ja jums tas šķita noderīgi, lūdzu, balsojiet uz Vai šī ziņa bija noderīgs jautājums tālāk.

Varat arī uzdot jautājumu, atstāt komentāru vai sniegt atsauksmes, izmantojot veidlapu Atstājiet atbildi, kas atrodas šīs lapas beigās.

Visbeidzot, lai iegūtu vairāk PowerShell S zonu, apmeklējiet mūsu Windows PowerShell pamācību lapu. Iespējams, jums ļoti noderēs arī mūsu lapa Darbs no mājas lapas.

irbuli ar plaukstu noraidīšanas logiem

Atsauces un turpmākā literatūra

  1. Darbs ar reģistra ierakstiem
  2. Lejupielādējiet Get-RegistryData.zip
  3. Lejupielādēt Add-RegKeyLastWriteTime.zip
  4. Paskaidrots Windows PowerShell ISE