Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 获取登录用户的远程注册表_Powershell_Registry - Fatal编程技术网

Powershell 获取登录用户的远程注册表

Powershell 获取登录用户的远程注册表,powershell,registry,Powershell,Registry,我在网上看到了很多关于获取远程注册表的例子,但是我想检查登录用户的文件夹重定向,而不是我运行脚本的用户 使用PowerShell甚至可以做到这一点吗?在我加入这家公司之前,他们的IT是外包的,整个广告/GPO都是一团糟。有些用户正在重定向,有些则没有,因此我想检查谁启用了重定向,而不必亲自访问每台计算机 $reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('CurrentUser','10.0.0.113') $regkey = $re

我在网上看到了很多关于获取远程注册表的例子,但是我想检查登录用户的文件夹重定向,而不是我运行脚本的用户

使用PowerShell甚至可以做到这一点吗?在我加入这家公司之前,他们的IT是外包的,整个广告/GPO都是一团糟。有些用户正在重定向,有些则没有,因此我想检查谁启用了重定向,而不必亲自访问每台计算机

$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('CurrentUser','10.0.0.113')
$regkey = $reg.OpenSubKey("Software\\Microsoft\\Windows\CurrentVersion\\Explorer\\User Shell Folders")
$regkey.GetValue("Personal")

我尝试了这一点,但再次只向我显示有关脚本运行时的管理员用户帐户的信息。

这是可能的,但需要

一种更简单的方法可能是使用登录脚本将信息写入文件(在用户的计算机或中央共享上),以便您可以从那里收集信息:

$key    = 'Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders'
$output = "\\server\share\$env:USERNAME.txt"

Get-ItemProperty "HKCU:\$key" | Select-Object -Expand Personal |
  Set-Content $output

在这个场景中,我想你应该查看peoples NTUser.dat(该用户的hkey当前用户),那么此时谁登录并不重要。您知道吗,我认为最好是用户当时没有登录,或者您复制一份NTUser.datal,请参见此处:
$key    = 'Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders'
$output = "\\server\share\$env:USERNAME.txt"

Get-ItemProperty "HKCU:\$key" | Select-Object -Expand Personal |
  Set-Content $output