Power Shellを使用して、このコマンドを使用してパスが存在するかどうかを確認しました。 powershellのテストパス "HKCU:\ Software \ Microsoft \ Windows"これはリモートマシンにどのように拡張できますか?リモートマシンでレジストリパスをテストする場合の構文は何ですか。テストパス「\\ machinename \ HKCU:\ Software \ Microsoft \ Windows」とそれが動作しません。テストする方法を提案してください。ここに概説されているようレジストリパスがリモートマシンに存在するかどうかの確認
答えて
あなたはそれにアクセスすることができます。http://powershell.com/cs/blogs/tips/archive/2011/02/15/accessing-registry-remote.aspx
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', 'server123')
$key = $reg.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall')
$key.GetSubKeyNames() | ForEach-Object {
$subkey = $key.OpenSubKey($_)
$i = @{}
$i.Name = $subkey.GetValue('DisplayName')
$i.Version = $subkey.GetValue('DisplayVersion')
New-Object PSObject -Property $i
$subkey.Close()
}
$key.Close()
$reg.Close()
代替PSRemotingを有効にして、リモートマシン上でinvoke-command
を使用し、効果的にあなたがローカルボックス上で実行するだろうかと同じコマンドを実行することです。
リモートコンピュータの現在のユーザーハイブに接続することはできません。リモートレジストリモジュールを使用して、リモートサーバーのhklmハイブにリモートキーが存在するかどうかを確認する例を次に示します。モジュールは、CodePlexの上で見つけることができます。Microsoft \ winows -Hive LocalNachine
Thisサイト\ psremoteregistry.codeplex.con
テスト-レジストリキーに-ComputerNameサーバー1 -Keyソフトウェアが助けてくれました。コードは基本的に1つのキーをチェックし、最初のキーが存在しない場合は別のキーを確認します。また、サブキーが値を読み取ろうとする前に存在することを確認します。どちらも存在しない場合、try/catchはそれに対処できます。
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $computerName)
$regkey = $reg.OpenSubkey("SOFTWARE\\Symantec\\Symantec Endpoint Protection\\AV\\Storages\\Filesystem\\RealTimeScan")
if(-not $regkey) {
$regkey = $reg.OpenSubkey("SOFTWARE\\Wow6432Node\\Symantec\\Symantec Endpoint Protection\\AV\\Storages\\Filesystem\\RealTimeScan")
}
$autoProtectStatus = ""
$null = ""
if ($regkey.GetValue("OnOff", $null) -ne $null) {
$autoProtectStatus = $regkey.GetValue("OnOff")
}
if ($autoProtectStatus -eq 1) {
$autoProtectStatus = "Protection On"
} elseif ($autoProtectStatus -eq 0) {
$autoProtectStatus = "Protection Off"
} else {
$autoProtectStatus = "Unknown State"
}
Q & Aの多くは、3歳以上です。私はPowershellの新しいバージョンがこれをたくさんクリーンアップしたに違いないと思う。それを言っても、リモートコンピュータ上のレジストリを(私が知る限り)チェックする直接のコマンドはまだありません。これは動作します - (?それはしかし他の答えよりも簡単です)、それは、.NET 4.6.2がインストールされているかどうかを確認する
invoke-command -computername <NetBiosName> -scriptblock {test-path -Path
"HKLM:\Software\Microsoft\.NetFramework\v4.0.30319\SKUs\.NetFramework,
Version=v4.6.2"}
あなたはまた、内側(*の.ps1というファイルにすべてをスクリプトブロックの内容を置くことができます{}そして、その後でそれを呼び出します。単独のキーに終了した場合、Invoke-Commandコマンド-ComputerName NETBIOSNAME -FilePath「FQLP」
- 1. Net :: SSH2を使用してリモートマシンにディレクトリが存在するかどうかを確認する方法
- 2. キャッシュにKerberosチケットが存在するかどうかの確認
- 3. リモートマシン上にファイルが存在するかどうかを確認してください
- 4. オブジェクトがDbsetに存在するかどうかを確認
- 5. 列に値が存在するかどうかを確認
- 6. 行が存在するかどうかを確認するクエリ
- 7. 文書が存在するかどうかを確認する
- 8. レコードが存在するかどうかを確認するCakephp
- 9. イメージが存在するかどうか確認する
- 10. 要素が存在するかどうかを確認する
- 11. 子が存在するかどうかを確認する
- 12. CRMレコードが存在するかどうかを確認する
- 13. クラスが存在するかどうかを確認する/ jQuery
- 14. アカウントが存在するかどうかを確認する
- 15. データシートが存在するかどうかを確認するR
- 16. モデルが存在するかどうかを確認するCakephp
- 17. オブジェクトが存在するかどうかを確認するR
- 18. VB.net - リモートファイルが存在するかどうかを確認する
- 19. データベーステーブルが存在するかどうかを確認する - パフォーマンス?
- 20. [i]が存在するかどうかを確認する
- 21. コマンドが存在するかどうかを確認する
- 22. iFrameページが存在するかどうかを確認する
- 23. 名前が存在するかどうか確認する
- 24. PHPディレクトリが存在するかどうかの確認問題
- 25. XSLT:属性が存在するかどうかの確認
- 26. ポップオーバーが存在するかどうかの確認
- 27. HTML5 LocalStorage:キーが存在するかどうかの確認
- 28. location.hashが存在するかどうかの確認
- 29. Firebase:ノードが存在するかどうかの確認
- 30. ファイルが存在するかどうかを確認します
thts gr8..howは、私はこの方法を使用してチェックしますか存在をCHKする唯一の方法はです例外を使用します。これを行うための他の直接的な方法はありますか? – sriram
呼び出しコマンドは私の目的のためにクールです。 – sriram