我已经完成了编写Powershell脚本以从域中的其他计算机获取一些信息。 它看起来有些奇怪,但是可以在远程机器上运行此脚本test.ps1而无需输入(Credential) 因为这似乎是不合逻辑的:
enable-psremoting -Force
在每台机器上,然后:
Invoke-Command -FilePath C:\path\test.ps1 -ComputerName computername -Credential domain\usrname
我期待你的回答
答案 0 :(得分:0)
我认为没有办法解决这个问题。
您的管理员应使用全局策略为您公司中所有需要的计算机启用远程处理。
您可以使用sysinternals psexec远程运行powershell:
psexec \\remote-computer powershell -File <....>
psexec \\remote-computer powershell -Command <....>
要使-File
变体工作文件必须在远程服务器上可用或可通过SMB共享访问。
请注意,这需要您在远程计算机上管理,因为它使用您的Windows凭据。您可以指定远程用户和密码。
你也可以
psexec \\remote-computer powershell -Command "enable-psremoting -Force"
为了不通过例如代理函数将Invoke-Command自动化,通过向它添加一个参数来实现{... 1},然后你可以调用它,例如:
EnableRemoting
在代理中,您可以将此参数默认设置为true,在这种情况下您不需要它。除代理外,您还可以使用此功能。
在执行此操作之前,如果您首先测试它是否已启用,您将加快速度:
Invoke-Command -FilePath C:\path\test.ps1 -ComputerName computername -EnableRemoting