远程执行`shutdown / sg`

时间:2019-01-31 23:04:05

标签: windows powershell batch-file ssh

我正在使用树莓派关闭Windows 10计算机。 我的RPI使用带有私钥的SSH在计算机上执行shutdown /s /t 30命令。

但是,出于优化的原因,我想使用shutdown /sg命令;这样,我的应用程序将在我解锁会话之前自动打开。

但是,shutdown /sg需要在桌面会话上执行。

如何通过SSH传达的命令在桌面上执行脚本?

2 个答案:

答案 0 :(得分:0)

感谢您的帮助。

我试图使用Invoke-Command,但Powershell的不是我杯茶。

但是,我找到了解决方法:

我在任务管理器中创建了一个任务(名为 ShutdownSG_over_SSH_from_RPI ),该任务执行shutdown \sg命令。

在我的RPI中,我通过SSH执行以下命令:

powershell -command "Start-ScheduledTask -TaskPath '\MyTaskPath\' -TaskName 'ShutdownSG_over_SSH_from_RPI'"

我知道这不是最好的解决方案,但是它可行。

答案 1 :(得分:-1)

如果您有PowerShell 6.0,则New-PSSessionEnter-PSSessionInvoke-Command中已添加了对SSH连接的支持

这需要在Raspberry PI和计算机上都安装软件。

Microsoft提供了一篇不错的文章,解释了如何实现此目的: https://docs.microsoft.com/en-us/powershell/scripting/learn/remoting/ssh-remoting-in-powershell-core?view=powershell-6

您还应该查看Invoke-Command的文档,因为这是远程执行命令和脚本的最简单方法: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/invoke-command?view=powershell-6