子キー内の値に基づいてレジストリ値を変更しようとしています。下記の図をご覧ください。レジストリ - 親値を変更するために子値を検索する
- scripts
- {ID}
+ ScriptState = 0 #This is the value I am looking to change
- properties
+ {ID},E = 'Activated' #based on the values of these registry values
+ {ID},V = 'Hard Drive' #based on the values of these registry values
凡例:
+ = Value - = Key
IDのすべてがランダムに生成され、そして私はトラブル/ランダムに生成されたキーIDのリストを取得してループを持っています。私はこれらのキーIDをループすることができたら、残りはかなり簡単にする必要があります。
以下は、私が使用しているチャイルドキー(まだ実装されていない親のキーの値を変更する)を探してフィルタリングしようとしている現在のスクリプトです。
V1:
Get-ChildItem -Path $key -rec | foreach {
Get-ChildItem -Path $_.PSPath -rec } | foreach {
$CurrentKey = (Get-ItemProperty -Path $_.PsPath) } |
select-string "REGEX TO FIND VALUES" -input $CurrentKey -AllMatches |
foreach {($_.matches)| select-object Value
}
V2:
Get-ChildItem -Path $key -rec | foreach {
Get-ChildItem -Path $_.PSPath -rec | foreach {
$CurrentKey = (Get-ItemProperty -Path $_.PsPath)
if ($CurrentKey -match "REGEX TO FIND VALUES") {
$CurrentKey
}
}}
どちらも上記のスクリプトは、任意の結果を生成し、私は誰かがそうではない理由を私は理解するのに役立つか記入してくださいすることができますことを願っています/これを達成するコードに私を向ける。
P.S.説明できないタイトルに申し訳ありませんが、これを数語で説明するのは難しいです。
だから質問は何ですか? :-) –
謝罪、私は最も重要な部分を省いた。私は今、質問で質問を更新しました... – Kickball