如何使用脚本从 Windows 系统向 Linux 系统发送命令?

如何使用脚本从 Windows 系统向 Linux 系统发送命令?

问题:我有一个备份程序 (BackupAssist),它可以在备份后自动运行脚本。我想在备份完成后自动关闭存储异地备份的计算机。我已经让关机部分正常工作(使用密钥而不是密码,因此它可以在脚本中工作),但我不知道如何在不使用 Cygwin 等交互式 shell 的情况下向 Linux 机器发送命令。

我需要能够在完全没有用户交互的情况下发送命令。在脚本中简单地执行 Cygwin 中的命令是理想的方法,但任何解决方案都可以。

答案1

叮当是 Windows 的 ssh 客户端。

您还可以使用 Cygwin 中的 OpenSSH 的 ssh 客户端。

您需要在 Linux 机器上运行并启用 sshd。如果您想自动运行,您可能希望使用无密码ssh 密钥为了这。

答案2

如果您想通过批处理文件在 Cygwin 中运行 SSH,您可以尝试:

@echo off
C:\cygwin\bin\bash ssh user@host 'shutdown -h now'

公平警告,我没有 Windows 机器来测试这一点。

答案3

ssh如果您可以从 Cygwin访问,则将代替登录 shellssh user@host <command>执行。或者,您可以使用<command>plink.exe油灰代替 Cygwin 的ssh。(感谢 grawity)

您还可以执行多个命令,例如

ssh user@host "first_command ; second_command ; ..."

相关内容