【问题标题】:Remotely execute `shutdown /sg`远程执行`shutdown /sg`
【发布时间】:2019-06-25 12:03:07
【问题描述】:

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

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

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

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

【问题讨论】:

  • 你可以尝试使用 Enter-PSsession 来执行你的代码

标签: windows powershell batch-file ssh


【解决方案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

【讨论】:

    【解决方案2】:

    感谢您的帮助。

    我尝试使用 Invoke-Command,但 Powershell 不是我的最爱。

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

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

    根据我的 RPI,我通过 SSH 执行此命令:

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

    我知道这不是最好的解决方案,但它确实有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-05
      • 1970-01-01
      • 1970-01-01
      • 2019-11-15
      • 2017-06-29
      • 1970-01-01
      • 1970-01-01
      • 2023-01-30
      相关资源
      最近更新 更多