New-PsSession无需创建配置文件?

时间:2019-03-01 13:55:21

标签: powershell powershell-remoting user-profile

我需要使用New-PsSession在远程计算机上运行多个命令来从注册表中收集信息。

问题是,当我运行New-PsSession时,它会在计算机上使用我的用户名创建一个用户配置文件,并且在我断开连接并删除会话后,该配置文件已正确“卸载”,但文件保留在C:\用户\ XXX。

这是一个问题,因为有时我重新为计算机成像的同事会在该计算机上看到我的用户配置文件,并认为我正在登录该计算机,即使我只是运行了一些命令来检查注册表设置。

我的问题:有没有一种方法可以创建一个PsSession而不用它在目标计算机上创建一个您的名字的用户配置文件,或者用其他方法使其在断开连接和删除后自行清理?

用于说明这种情况的示例代码:

New-PSSession -ComputerName XXXX -name TEST

start-sleep 3 

Disconnect-PSSession -Name TEST 
Remove-PSSession -Name TEST

当然,在删除PsSession之后,我可以执行以下操作:

Get-WMIObject -ComputerName X -class Win32_UserProfile | Where {$_.LocalPath -eq "C:\Users\X" } | Remove-WmiObject

它可以工作,但感觉“肮脏”。我想念什么吗?

1 个答案:

答案 0 :(得分:1)

您是否尝试过以下方法:

$option = New-PSSessionOption -nomachineprofile
New-PSSession -ComputerName XXXX -name TEST -SessionOption $option