Управљање Виндовс регистром помоћу ПоверСхелл-а

ПоверСхелл од прве верзије пружа администратору велики сет алата за интеракцију са Виндовс регистром. По жељи, све типичне операције регистра се могу изводити не из старог старог интерфејса Регедит или рег.еке, већ из наредбене линије ПоверСхелл. А у разним скриптама и скриптама он је генерално незаменљив. У овом ћемо чланку погледати како помоћу програма ПоверСхелл креирати, уређивати, брисати кључеве и параметре Виндовс регистра, претраживати и повезивати се са регистром на удаљеном рачунару.

Садржај:

  • Навигација у регистру помоћу ПоверСхелл-а
  • Како променити вредност регистра
  • Како креирати нови одељак (кључ) или унос у регистар
  • Уклањање кључа регистра или поставке
  • Како преименовати кључ или параметар
  • Претражите регистрацију помоћу ПоверСхелл-а
  • Удаљени приступ регистру помоћу ПоверСхелл-а

Навигација у регистру помоћу ПоверСхелл-а

Рад са системским регистром у ПоверСхеллу сличан је раду са редовним датотекама на локалном диску.

Листамо доступне погоне:

гет-псдриве

Као што видите, уграђени провајдер вам омогућава приступ садржају две гране регистра: ХКЕИ_ЦУРРЕНТ_УСЕР (ХКЦУ) и ХКЕИ_ЛОЦАЛ_МАЦХИНЕ (ХКЛМ). Адресе регистра су адресиране, слично дисковима (ХКЛМ: \ и ХКЦУ: \) На пример, да бисте прешли на корен ХКЛМ огранка, урадите:

ЦД ХКЛМ: \

Можете да одете до одређене гране регистра (на пример, одговорне за подешавање аутоматског ажурирања управљачког програма) помоћу наредбе Сет-Лоцатион (кратак алиас сл)

Подеси локацију-пут ХКЛМ: \ СОФТВАРЕ \ Мицрософт \ Виндовс \ ЦуррентВерсион \ ДриверСеарцхинг

Листа садржаја гране:

дир

или

Гет-Цхилдитем

Отворите исту грану у уређивачу регистра. Као што видите, последња наредба је приказивала само информације о угнезђеним гранама, али не и о параметрима тренутне гране.

Чињеница је да, са становишта ПоверСхелл-а, огранак регистра (кључ) регистра је аналогни датотеци, а параметри похрањени у овом регистровачком кључу су својства ове датотеке.

Стога, да бисте добили параметре смештене у овој грани, користите цмдлет Гет-Итем:

Гет-итем .

или

Гет-Итем-Пут ХКЛМ-а: \ СОФТВАРЕ \ Мицрософт \ Виндовс \ ЦуррентВерсион \ ДриверСеарцхинг

Као што видите, кључ ДриверСеарцхинг има само један параметар - СеарцхОрдерЦонфиг са вредностом 0.

Да бисте приступили одређеном параметру кључа, користите цмдлет Гет-ИтемПроперти. На примјер, додијелимо садржај гране одређеној варијабли и добијемо вриједност одређеног параметра:

$ ДриверУпдате = Гет-ИтемПроперти -Патх "ХКЛМ: \ СОФТВАРЕ \ Мицрософт \ Виндовс \ ЦуррентВерсион \ ДриверСеарцхинг"
$ ДриверУпдате.СеарцхОрдерЦонфиг

Схватамо да је вредност параметра СеарцхОрдерЦонфиг једнака.

Како променити вредност регистра

Да бисте променили вредност овог параметра, користите цмдлет Сет-ИтемПроперти:

Сет-ИтемПроперти -Патх 'ХКЛМ: \ СОФТВАРЕ \ Мицрософт \ Виндовс \ ЦуррентВерсион \ ДриверСеарцхинг' -Наме СеарцхОрдерЦонфиг -Валуе 0

Проверите да ли се вредност променила:

Гет-ИтемПроперти -Патх 'ХКЛМ: \ СОФТВАРЕ \ Мицрософт \ Виндовс \ ЦуррентВерсион \ ДриверСеарцхинг' -Наме СеарцхОрдерЦонфиг

Како креирати нови одељак (кључ) или унос у регистар

Да бисте додали нову грану регистра, користите наредбу Нев-Итем. Креирајте нову подружницу под називом НевКеи:

$ ХКЦУ_Десктоп = "ХКЦУ: \ Цонтрол Панел \ Десктоп"
Нев-Итем-Пут $ ХКЦУ_Десктоп -Наме НевКеи

За креирану грану додајте нови стринг параметар са именом СуперПарамСтринг и вредност филе_наме.ткт:

Нев-ИтемПроперти -Патх $ ХКЦУ_Десктоп \ НевКеи -Наме "СуперПарамСтринг" -Валуе "филе_наме.ткт“ -ПропертиТипе „Стринг“

Уверите се да се у регистру појављују нови кључ и параметар.

Уклањање кључа регистра или поставке

Избришите параметар СуперПарамСтринг креиран раније:

$ ХКЦУ_Десктоп = "ХКЦУ: \ Цонтрол Панел \ Десктоп"
Ремове-ИтемПроперти -Патх $ ХКЦУ_Десктоп \ НевКеи -Наме "СуперПарамСтринг"

А затим избришите целу грану:

Ремове-Итем-Пут $ ХКЦУ_Десктоп \ НевКеи -Рецурсе

Напомена. Прекидач -Рецурсе каже да морате избрисати све угнијежђене пододјелове рекурзивно, без потврде

Да бисте избрисали све елементе из гране, али не и сам одељак, наредба ће бити следећа:

Ремове-Итем-Пут $ ХКЦУ_Десктоп \ НевКеи \ * -Рецурсе

Како преименовати кључ или параметар

Да бисте преименовали параметар, користите наредбу:

Преименуј-ИтемПроперти -патх 'ХКЦУ: \ Цонтрол Панел \ Десктоп \ НевКеи' -наме "СуперПарамСтринг" -наме "ОлдПарамСтринг"

Слично томе, можете преименовати огранак регистра:

Преименовање-пут-пут 'ХКЦУ: \ Цонтрол Панел \ Десктоп \ НевКеи' ОлдКеи

Претражите регистрацију помоћу ПоверСхелл-а

ПоверСхелл такође омогућава претрагу у регистру. Сљедећа скрипта претражује грану ХКЦУ: \ Цонтрол Панел \ Десктоп за параметре који садрже дпи кључ.

$ Патх = (Гет-ИтемПроперти 'ХКЦУ: \ Цонтрол Панел \ Десктоп')
$ Патх.ПСОбјецт.Пропертиес | ФорЕацх-Објецт
Иф ($ _. Име-слично '* дпи *')
Врите-Хост $ _. Наме '=' $ _. Вредност

Удаљени приступ регистру помоћу ПоверСхелл-а

ПоверСхелл омогућава приступ регистру удаљеног рачунара. Можете да се повежете са удаљеним рачунаром преко ВинРМ-а (Инвоке-Цомманд или Ентер-ПССессион):

Инвоке-Цомманд -ЦомпутерНаме срв-фс1 -СцриптБлоцк Гет-ИтемПроперти -Патх 'ХКЛМ: \ Систем \ Сетуп' -Наме ВоркингДирецтори

Или повезивањем са удаљеним регистром (услуга РемотеРегистри мора бити омогућена)

$ Сервер = "срв-фс1"
$ Рег = [Мицрософт.Вин32.РегистриКеи] :: ОпенРемотеБасеКеи ('ЛоцалМацхине', $ Сервер)
$ РегКеи = $ Рег.ОпенСубКеи ("Систем \ Подешавање")
$ РегВалуе = $ РегКеи.ГетВалуе ("ВоркингДирецтори")

Савет. Ако треба да креирате / измените одређену поставку регистра на многим рачунарима домена, лакше је користити ГПО функције.

Дакле, погледали смо типичне примере коришћења ПоверСхелл-а за рад са Виндовс регистром. Као што видите, ништа компликовано.