【问题标题】:How can I run PSExec command as the primary user如何以主用户身份运行 PSExec 命令
【发布时间】:2020-09-23 14:49:06
【问题描述】:
我正在尝试编写一个小脚本,它将每台连接域的计算机的主要用户的 appdata 目录输出到我自己笔记本电脑上的文本文件中。截至目前,如果我指定用户名(例如 C:\users\USERNAME\appdata),它就可以工作,但它需要更通用,以便它可以在域中的每台计算机上运行。这是我目前所拥有的:
.\PsExec.exe \\* C:\cygwin64\bin\dir.exe "C:\users\USERNAME\AppData\" > \\PCNAME\C$\users\USERNAME\desktop\Chrome_Extensions.txt
我希望能够跨域指定主要用户,但使用 %USERPROFILE% 之类的东西而不是 C:\users\USERNAME\ 显然是行不通的。有谁知道我可以做到这一点的方法吗?谢谢!
【问题讨论】:
标签:
powershell
directory
remote-access
psexec
【解决方案1】:
我认为如果没有 SCCM 之类的东西,您将无法锻炼工作站的主要用户。甚至 SCCM 也需要一段时间才能将机器与用户帐户相关联。
最好让您的脚本作为当前登录用户的登录脚本运行。不建议尝试将输出发送回您的笔记本电脑,因为它有时可能会关闭。理想情况下,应该返回到所有用户都可以访问的服务器上的共享文件夹。
这里 PowerShell 也是比 psexec 更好的选择。
If (Test-Path -Path "$env:LOCALAPPDATA\Google\Chrome\User Data\Default\Extensions"){
Get-ChildItem -Path "$env:LOCALAPPDATA\Google\Chrome\User Data\Default\Extensions" | Out-File -FilePath "\\SERVER\SHARENAME\$ENV:COMPUTERNAME-Chrome_Extensions.txt"
}