我正在寻找能够确定远程计算机的特定用户配置文件夹并在资源管理器窗口中弹出它的脚本。
我想把它称为:
openUserProfile.ps1 username hostname
我从那个代码开始,但后来没有发生任何好事......
params($username, $computer)
Get-WmiObject -ComputerName $computer Win32_UserProfile
想法?谢谢!
--------- ---------- UPDATE
现在有了这段代码,我可以列出所有个人资料路径,但我不能只存储我想要的那个,试图将$ username放在哪里但没有运气
$username = "user1"
$computer = "pc1"
$info = gwmi win32_userprofile -ComputerName $computer |
Select-Object LocalPath |
where {$_.localpath -like "*"}
echo $info
输出:
LocalPath
---------
C:\Users\user1
C:\Windows\ServiceProfiles\NetworkService
C:\Windows\ServiceProfiles\LocalService
C:\Windows\system32\config\systemprofile
答案 0 :(得分:1)
您的更新代码非常接近,您只需要匹配路径中的用户名:
$info = gwmi win32_userprofile -ComputerName $computer |
Select-Object LocalPath |
where {$_.localpath -like "*$username"}
然后,您需要将输出转换为UNC路径:
$UNC = $info.LocalPath.Replace("C:","\\$computer\c$")
Invoke-Item $UNC
答案 1 :(得分:1)
确定本地路径有更简单的方法:
$env:USERPROFILE
要查看所有环境变量的运行:
Get-ChildItem Env: